单Websocket连接或两个连接之间的性能折衷-单广播与多广播

时间:2019-03-03 17:28:32

标签: node.js websocket

我是实时连接的新手,我试图了解性能。我正在使用node.js后端(使用Sails.js框架)。

我有一个用例,其中有两个“存储桶”。一种是“用户”消息,另一种是“内部”消息。

用户消息包括:通知消息(为简单起见,请留在此处)

家庭消息包括:聊天消息,是用户键入的消息(为简单起见,请留在此处)

两个套接字连接-我的想法

好处:

  • 单播到房间ID为用户ID的用户消息
  • 单播到房间ID为家庭消息的homeId

否定词:

  • 两个套接字连接

一个套接字连接-我的想法

房间ID为userId。

好处:

  • 单插座连接

否定词:

  • 对于家庭留言,我将需要:
    1. 执行数据库查询以查找房屋中的所有用户ID
    2. 对每个userId进行多次广播(因为每个连接的房间ID是用户ID)

总结

对我来说,作为编码器为两个连接进行编写更方便。但由于我正在考虑两个同时连接,因此服务器上的负载更多。

我想使用上述方法,除非第二次同时连接的成本最差,然后才是“查询数据库并向多个房间ID的多个广播”的性能成本。

0 个答案:

没有答案