我有一个全球定位系统车队管理应用程序,我认为将大大受益于使用node.js。我刚刚开始研究node.js,我仍然认为我还有很多东西要学,但是我会很感激你的建议和指导。
为了给你和我们当前设置的想法:
java应用程序接收、编译并将gps记录解析为mySql db。用户比,虽然我们的应用程序,查询数据库每6秒为一个特定的gps单元的最后记录。白天大约有900万条记录被插入到数据库中。
所以我想做的是在我们的java应用程序中使用并包括node.js,并利用它将gps数据发送到客户端浏览器,而不需要将其查询到数据库中。换句话说,我想做一个小功能,检查gps id (总共约5000个id ),并与客户机id(总共200个id)进行比较,并以此为基础将其发送到所需的node.js通道。
如果我对node.js没有太多的经验,如果你能告诉我我的逻辑是否合理,node.js是正确的选择,我会非常感激。
谢谢,
发布于 2013-11-29 03:41:01
如果您已经在使用Java,那么为什么不使用像CometD (http://cometd.org/)这样的工具,它具有相同的(或类似的)推到Socket.io的功能,并且已经是基于Java的。如果您使用的是Jetty以外的java容器,则大气(https://github.com/Atmosphere/atmosphere)是另一个很好的选择,它支持大量容器。
一般来说,我认为你的设计在“实时”方面有一点缺陷。当你得到更新,你应该直接把他们推向客户,如果他们是连接的,并有一个积极的“订阅”的信息。您仍然可以更新数据库,但是为什么数据库在“推送”模型中是这些信息的中心交换所呢?当您并行更新数据库时,直接推送到某种websocket风格的解决方案会更有意义。然后,查询数据库的唯一人员是登录一个新会话以获取“最后一个历史点”的用户,并且所有后续更新都被推送,而不需要任何数据库查询。
有人有想法吗?
https://stackoverflow.com/questions/13568422
复制相似问题