多台服务器共同处理任务的时候,通过什么方式来交互比较好?

2019 年 12 月 11 日
 wyan453351466

需求是,需要在多台服务器上同时执行某种任务。

一个 master 服务器负责派发任务,多个 worker 服务器来执行。

那么服务器与服务器之间的数据通过哪种方式交互会比较好呢?

通过 web-api 定时通信?

还是直接连接同一个的 Redis 数据库?(楼主觉得前者比较好,毕竟可以减少 http 的请求次数,安全性方面貌似也更好一些)

还有其他的方法吗?

3401 次点击
所在节点    程序员
13 条回复
tms
2019 年 12 月 11 日
mq、rpc
lihongjie0209
2019 年 12 月 11 日
同步 RPC
异步 MQ
securityCoding
2019 年 12 月 11 日
本质上是任务分片执行 ,不要考虑其他的了 , 就是 MQ
wyan453351466
2019 年 12 月 11 日
需求补充:

对实时性的要求不高,任务处理结果的返回可以有一定的延迟,只要最终数据能统一到一起就行。
chen774553620
2019 年 12 月 11 日
消息队列 mq
zhiguang
2019 年 12 月 11 日
分布式任务调度?
BlackBerry999
2019 年 12 月 11 日
同 2 楼
robot1
2019 年 12 月 11 日
mapreduce
netnr
2019 年 12 月 11 日
webhook 钩子,分发后,执行完(包括异常超时等)触发接口调用
wangyzj
2019 年 12 月 11 日
python 的话 celery
Vegetable
2019 年 12 月 11 日
太多啦,建议直接使用现成的框架,比如 celery
https://github.com/search?q=distribute+task&type=Repositories
araaaa
2019 年 12 月 11 日
rsocket 和 reactor
araaaa
2019 年 12 月 11 日
@araaaa reactor 的 mono.zip 可以进行多个并发处理

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.xtra.eu.org/t/628029

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX