请问 nodejs 之间的通信用什么好?

2017-12-23 14:48:57 +08:00
 jecshcier

是这样的,我写了一个公司内部交流的聊天系统。现在要做 pc、mobile 的客户端(本来是纯 web 端的)。我想对我写的项目进行一次剥离,分成两块,一块只负责路由、与客户端的 websocket 通信,另一块只负责读写数据,当成一个 restful api 使用。

前者的话,将来应付三平台的客户端在线聊天使用,后者为前者提供数据支持,同时也想要开放一些 api 供其他系统使用。

首先想到的是 http 通信,但考虑到高并发的情况(虽然没有这种情况,但还是往这种情况去考虑),以及目前我们用的就只是 http 不是 https,安全性得不到保证。

然后想到是不是可以用 tcp 协议自己搞一个类似 java 那样的 websevice,之后又想到了 zookeeper。但是对这一块不是非常了解,各位能否支个招?

2398 次点击
所在节点    问与答
7 条回复
BOYPT
2017-12-23 14:59:50 +08:00
各种 mq 啊。
jecshcier
2017-12-23 16:40:10 +08:00
@BOYPT rabbitmq 么
Elven
2017-12-23 18:42:01 +08:00
可以丢个 grpc
tmac6740
2017-12-23 20:07:44 +08:00
小乔要努力变强
jecshcier
2017-12-23 21:39:10 +08:00
@tmac6740。。。😅😅😅
cloud107202
2017-12-24 16:34:52 +08:00
同步建议 gRPC,异步用 MQ. MQ 的选择比较多,有基于内存的(rabbitmq nsq) 有可持久化的(kafka) 有些只能消费一次,有的可以由 client 自由操控 offset 反复消费 msg(还是 kafka)
jecshcier
2017-12-24 19:52:54 +08:00
@cloud107202 kafka 这个我也查到了,一直不明白它和 zookeeper 的区别,可否解答一下疑惑

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

https://www.v2ex.com/t/417065

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

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

© 2021 V2EX