1
BigBrother1024 2019-09-17 11:48:11 +08:00 via Android
celery?
|
2
BingoXuan 2019-09-17 11:53:02 +08:00
如果网络不可达,那 a,b 不就是孤立的吗?就算连接数据库也要有网络吧
|
3
gimp 2019-09-17 11:57:32 +08:00
用服务器来中转消息,websockets, mqtt 协议, 或者用各种 MQ,都能实现你的需求。
|
4
lllllliu 2019-09-17 12:00:42 +08:00 1
Socket 编程, 或者,最简单的一个 Pub/Sub 都可以呀。
|
5
zpfhbyx 2019-09-17 12:04:07 +08:00
都这么高端,不考虑队列么..
|
6
anonymous256 2019-09-17 17:44:19 +08:00
同一主机的话, socket 直接就可以了吧.
不同主机的话, 一个用 websocket server 监听, 一个用 websocket client, 用户点击的时候开始通信. |
7
hspeed18 2019-09-17 20:00:29 +08:00
我觉得你的问题在于基础太差
|
8
smallpython OP @BingoXuan 是指 A 与 B 之间无法直接通信,但是可以和第三方资源通信
|
9
smallpython OP @zpfhbyx 用消息队列的话,如何获取队列里的任务呢?是轮询吗?
|
10
BingoXuan 2019-09-18 09:20:32 +08:00
@smallpython
第三资源可以是什么?另外一台服务器,还是某种 api 接口? |
11
smallpython OP @BingoXuan 一台服务器
|
12
BingoXuan 2019-09-18 09:38:48 +08:00 1
那还是走网络通讯比较好。如果不缓存消息做异步处理的话,可以试一下 zmq。a 做 publisher,中转服务器做 subscriber 订阅 a 的消息,同时充当 publisher,b 去订阅中转服务器就可以了。这样子 a 发送消息时候,经过中转服务器后 b 就能收到消息,而且速度很快,性能消耗不大。
|