首页
学习
活动
专区
圈层
工具
发布

原面推
EN

Stack Overflow用户
提问于 2015-06-05 07:46:28
回答 1查看 186关注 0票数 1

我想在我的web应用程序中使用“primefaces”来接收通知。

我希望用户能够根据他所属的组接收通知。每个用户都可以属于几个组,例如:

  • 用户X属于A和B组。
  • 用户Y属于A、C和D组。
  • 用户Z属于B组和C组。

当用户登录到web应用程序中时,该用户应该订阅这些通知组。

我的问题是,我必须为用户创建多少个“套接字”。

代码语言:javascript
复制
<p:socket onMessage="handleMessage" channel="/groupX"  />

例如,如果用户属于两个组,那么应该在JSF页面中动态创建两个套接字吗?我可以创建一个套接字并使用它接收来自不同组的通知吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-05 09:11:48

假设它们不是彼此的子集,则不能使用一个通用套接字(一个通道)。根据登录用户的数量和/或用户组的数量和/或用户所属的组数,我可以看到另一种可能的解决方案(除了为每个组创建套接字外,您已经提到了)。

为每个用户和服务器创建一个特定于用户的通道,维护一个具有组名的HashMap和属于该组的登录用户列表。当需要向一个组发送消息时,遍历列表并将其发送给每个单独的用户。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30661107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档