Architecture for CPU intensive tasks with NodeJS & Socke
Architecture for CPU intensive tasks with NodeJS & Socket.io
我目前正在考虑一个NodeJS应用程序,在该应用程序中,我希望使用socket.io在多个客户端之间进行通信。
该应用程序将由数百个客户端组成,这些客户端都在谷歌地图上有一个位置。我希望服务器为每个客户端进行处理,这些客户端之间的半径为200米。如果我在nodeJS中纯用javascript来做这件事,这将给服务器带来巨大的负载,我担心这会导致服务器在处理这项巨大任务时暂停所有其他任务,这将导致服务器在执行cpu密集型任务时所有通信都会暂停。
我的问题是,如何使用NodeJS和Socket.io纯粹用于客户端之间的通信,并将CPU密集型任务转移到其他地方,以便在服务器执行CPU密集型的任务时不会中断客户端之间的通讯?
提前谢谢,原谅我的英语!
Bram
考虑使用pub/sub工作队列模型,在该模型中,socket.io服务器只与客户端交互,并将其数据持久化到数据库(redi或其他)中,一个单独的工作进程集群从队列中提取计算作业,计算结果并将其写回,客户端服务器可以将其传输到客户端。
相关文章:
- jquery点击函数select&取消选择
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- Angular js-返回一个包含类似
- 一点javascript元编程&可链接的设置器
- 通过JSON&比较时间
- Jquery模板,如果xx&&如果yy
- jQuery工具验证器自定义效果-添加&消除影响
- Twitter引导程序Typeahead-Id&标签
- AngularJS&JSON-从Previous&下一个对象
- 什么是&&在没有if的行中的变量之间
- 关于引入外部javascript文件的问题&css通过https
- 指令的模板必须只有一个根元素:With restrict E&替换true
- 使用ajax的服务器端分页&jQuery
- Javascript,如果条件在没有&&逻辑运算符当&&它不起作用
- 如何使用dropzone&vueJs
- 如何准确执行加载脚本&退出弹出窗口
- 如何添加CSS&JavaScript进入Windows窗体应用程序C#.net
- Solr查询以按日期月份获取数据&年
- 显示&作为&在jsp中使用angularjs而不使用ng-bind-html
- 如何惯用地手动销毁scope&在AngularJS中重新创建