Tag: 实时数据

MongoDb收集生产数据

我面临着一个新的问题,我从来没有尝试过。 所以我想通过比我更有见识的人来指向正确的方向:-) 有朋友问我是否帮他devise生产线的控制系统。 这个项目听起来很有趣,我不能停止想这个。 我已经发现我可以使用node.js服务器来控制系统。 到目前为止这么好(HTML5接口,我们来了)! 但是我真正希望这个系统突出的地方在于系统指标的收集。 系统报告各种各样的东西,如温度,stream量等,这些度量每秒报告数百次,每秒24次。 我的想法是坚持这个在MongoDb数据库,并做一些实时统计。 如果您愿意的话,“竞争”似乎将其保存在SQL服务器数据库中,并允许操作员将汇总的数据导出到Excel中,并在Excel中进行统计。 使用MongoDb进行实时统计的策略是什么? 我真的很想根据这些指标提供即时反馈和监测。 如过去24小时内的平均温度,峰值等,并启用警报。 服务器上不会有太多的高级统计信息。 如果需要的话,我会启用数据导出到一个程序,如SPSS。 MongoDb是否适合? 我很乐意使用Linux机器,而不是使用SQL Server和WinForms控制接口的Windows机器。 单凭许可证费就足以让我失望,尽pipe我知道购买机器的人可能不是这种情况。 这不会放在云中,而是放在networking上的一台服务器上。 在正在操作的机器旁边,我将放置一个触摸界面,通过浏览器将联系node.js服务器来调用PLC命令。 可以有多台需要控制的机器,它们全部由相同的中央node.js服务器控制。 机器由http://beckhoff.com/的PLC控制器控制。 对于MongoDb,我并不是一个完全的新手,但我从来没有把我制作的任何东西投入到生产中,而且我也不会把MongoDb放在我的CV上。 编辑:看来,$ inc操作符是要走的路。 但是,如果我不想每天和每小时的平均数以及连续的数据提供,每秒使用socket.io更新屏幕上的数据。 更新我需要的每个集合的文档是一个好主意。 我真的也想保存每一个测量值,但也许我可以每秒计算一次,所以我不会每秒存储1000条logging。

实时的Web应用程序:socket.io或托pipe的数据/消息?

CONTEXT 应用程序:单页实时networking应用程序 function: 用户操纵应用上的小部件,发送到服务器的小部件数据 服务器使用工作线程计算并将数据发送回应用程序 通讯: types:目前只有应用程序< – >服务器。 将来需要pub / sub 大小:每个更新JSON几个kB任何一种方式 频率:每分钟更新1-10次 高峰负载:几百个并发用户(但当然) 开发者能力:麻瓜 方法 1)天真的做法:托pipenode.js + express + socket.io 我有一个沙箱与天真的方法运行良好,但我觉得像驾驶猫(我告诉你,他可以开车!只是不是很好!)。 我的头盔上的csp,xframe,xss等,但我的socket.io代码是非常基本的,没有特别的事件处理程序或stream量限制。 2)备用方法:托pipenode.js +托pipe的实时数据/消息服务 这里的期望是,托pipe的实时数据/消息服务是健壮的,可以扩展到stream量,除了处理像DoS和安全传输的问题。 托pipe的node.js应用程序将在CDN后面提供静态文件,因此主要处理实时数据和工作线程。 node.js应用程序不会直接面对Web应用程序用户。 题 你会推荐方法#2明显优越,值得额外的成本? 任何其他意见/build议welome。