前言
提到数据大屏,通常大家的印象就是各种图表、表格的数据展示,然后不断地轮询后端接口。对于前端开发者来说,更多的关注点在于布局问题、图表的兼容性问题以及窗口变化后图表样式问题。对于后端来说,主要考虑的是如何在不断的请求中减轻服务器的压力。
但实际上,数据大屏的需求还远不止于此:
前端发布后应当可以作为应用直接运行,而不需要手动输入地址进行预览。 需要减轻服务器的压力,避免频繁的数据请求。 当前后端任何一方或双方都离线的情况下,数据仍能正常运行。 需要日志的存储,以便随时查看问题。 需要调用系统的能力和跨域调用 API ,以增加数据展示的灵活性。
解决方案
我采用了 GO 和 lorca 的方式来解决以上问题:
- 打包体积轻量,仅 20MB 。
- 使用无头浏览器 lorca ,可自定义 Chrome 和 JavaScript 之间的交互。
- 支持交叉编译到 Windows 和 Mac 系统。
- 离线状态下也可以正常运行。
- 可以运行本地服务,减轻服务器压力。
- 编译速度快,运行性能优秀。