请教一个场景怎么搭建服务

126 天前
 zhuoyue100
  1. 有一个 tcp 服务,连接成千上万的设备
  2. 有一个 websocket 服务,连接用户端 如 web ,小程序,app 等

用户发送的请求通过 websocket 通知给 tcp 到设备,下面 2 种方案怎么选择?

  1. tcp 和 websocket 服务合并成单个服务开发部署 缺点:每次重启 ws 就要重启 tcp , 优点:不需要 2 个服务之间通信
  2. tcp 和 ws 分开部署 缺点: 服务间需要通信,要么 ws 开一个 tcp 客户端,要么用消息中间件, 增加维护成本 优点:ws 可以单独重启,ws 服务上含有业务 api
836 次点击
所在节点    问与答
3 条回复
sagaxu
126 天前
当然按分开部署设计,不要有直接调用,走 RPC 或消息队列,留下足够弹性。
实际上线运营,初期可以部署在一起,小项目也没必要搞微服务,直接单体多服务,有需要时再独立部署。
sagaxu
126 天前
简单点来,那个 TCP 服务也可以走 ws 连接到那个 websocket 服务,作为“特殊的用户”存在,就变成其它用户给这个“特殊的用户”发消息了。
zhuoyue100
126 天前
@sagaxu 拜谢大佬!!

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

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

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

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

© 2021 V2EX