python – 以下场景必须使用什么模式的ZMQ?
我最近开始学习ZMQ(
Python).我必须承认,我发现很难理解PUSH / PULL和DEALER / ROUTER模式.
我的问题陈述如下: > N个客户端(例如100个)将在10:00:00(小时:分:秒)发送请求(查询某些数据,访问资源等)AM
请帮我一个示例程序/链接,以使用ZMQ开发客户端/服务器应用程序. (服务器必须至少一次处理100个请求) 如果第二天请求数量增加,我能否使用ZMQ进行扩展?如果是,怎么做? 解决方法
您有N个客户端和1个服务器.服务器将无法同时完成N个请求.显然,服务器可以使用crontab或其他调度机制在10:00:00 AM开始处理N个请求.
适当的ZMQ模式似乎是PUSH / PULL.见http://zguide.zeromq.org/page:all 并导航到图6 – 公平排队. 要回答缩放问题:您可以将服务器视为请求的单个入口点,服务器后面有一个(> = N)个并行工作者.该架构如图20所示 – 多线程服务器. 该架构理论上可以解决并发问题,但有一些重要的评论: >只有每个工作人员都有一个单独的CPU核心时,才能使用真正的并行执行(注意:它们可能使用tcp://地址分布在多台计算机上).如果你有< N核可用,您最终会将工作并行,并且OS会使其再次顺序. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- python – Django rest_framework 3.22多个更新创建对象而不
- Python使用plotly绘制数据图表的方法
- python – Django admin – 编辑页面上的错误模型对象
- Python正规则表达式学习指南
- python – TypeError:function(self,item,** kwargs)正好占
- python字符串加密解密的三种方法分享(base64 win32com)
- git使用.gitignore设置不生效或不起作用问题的解决方法
- 使用Python调整大图像(大于可用RAM)
- Python模块在终端中导入,但不是通过Unix Shell导入
- python开发_pickle