相关疑难解决方法(0)

node.js多房间聊天示例

我正在寻找支持多个房间的websocket/node.js聊天实现.

我也打算写一个需要多个房间或服务器的应用程序,我只是在寻找人们如何做的代码示例.

谢谢.

我知道有一个服务http://pusherapp.com提供这项服务,但我正在寻找一个开源示例.

javascript websocket node.js

63
推荐指数
1
解决办法
4万
查看次数

HAProxy + WebSocket断开连接

我正在使用HAProxy将子域上的请求发送到node.js应用程序.

我无法让WebSockets工作.到目前为止,我只能让客户端建立WebSocket连接,但之后很快就会出现断开连接.

我在ubuntu上.我一直在使用的各种版本socket.ionode-websocket-server.客户端是Safari或Chrome的最新版本.HAProxy版本是1.4.8

这是我的HAProxy.cfg

global 
    maxconn 4096 
    pidfile /var/run/haproxy.pid 
    daemon 

defaults 
    mode http 

    maxconn 2000 

    option http-server-close
    option http-pretend-keepalive

    contimeout      5000
    clitimeout      50000
    srvtimeout      50000

frontend HTTP_PROXY
    bind *:80 

    timeout client  86400000

    #default server
    default_backend NGINX_SERVERS

    #node server
    acl host_node_sockettest hdr_beg(host) -i mysubdomain.mydomain

use_backend NODE_SOCKETTEST_SERVERS if host_node_sockettest


backend NGINX_SERVERS 
server THIS_NGINX_SERVER 127.0.0.1:8081

backend NODE_SOCKETTEST_SERVERS
timeout queue   5000
timeout server  86400000

server THIS_NODE_SERVER localhost:8180 maxconn 200 check
Run Code Online (Sandbox Code Playgroud)

我已经浏览了网络和邮件列表但无法获得任何建议的解决方案.

(ps这可能是针对serverfault,但是还有其他的HAProxy问题,所以我选择在这里发帖)

reverse-proxy haproxy websocket node.js

43
推荐指数
3
解决办法
4万
查看次数

带p:poll/push的通知系统

我已经尝试为具有p:poll视图层的基本社交网络和一个简单的NotificationService类实现基本通知系统,该类从DB获取新通知并刷新通知列表,NotificationBean其中每个用户都是视图编组.与此类似的流程:

-Poll calls NotificationBean.getNewNotifications for example every 15 sec.
--getNewNotifications calls NotificationService and DAO methods
---notificationList of user is refreshed
----DataTable on view layer shows new notifications
Run Code Online (Sandbox Code Playgroud)

但关注的p:poll是它的性能,因为它在每个间隔到期时发送一个查询.

PrimeFaces有PrimePush,基于Atmosphere Framework,它打开网络套接字,似乎更适合创建通知系统.

但我不知道应该使用哪些组件和属性.它有属性的p:socket组件channel.我应该使用用户名作为channel值吗?以下来自PrimeFaces的代码展示并总结了最后的句子:

<p:socket onMessage="handleMessage" channel="/notifications" /> 
Run Code Online (Sandbox Code Playgroud)

据我所知,从这个展示示例中,这会p:socket监听notifications频道.推送代码片段是:

PushContext pushContext = PushContextFactory.getDefault().getPushContext();       
pushContext.push("/notifications", new FacesMessage(summary, detail));
Run Code Online (Sandbox Code Playgroud)

但这会通知所有用户页面,我需要一个通知特定用户的推送器.假设有2个用户并假设User1将User2添加为朋友.必须有某事.像那样:

pushContext.push("User2/notifications", new FacesMessage("friendship request", "from User1"));
Run Code Online (Sandbox Code Playgroud)

但我不确定这是否是这种功能要求的正确用法.考虑到应用程序的可扩展性,每个进程打开如此多的通道可能会产生昂贵的成本.

谢谢你的帮助.

jsf primefaces jsf-2

12
推荐指数
1
解决办法
1万
查看次数

Socket.io中的频道

我试图通过Node.js服务socket.io(http://socket.io/)向所有订户的某个子集广播消息.

更确切地说,我想使用用户可以订阅的频道,以便有效地将消息同时推送给几百个人.

我不确定addEvent('channel_name',x)是否可行.

我没有在文档中找到任何内容.有任何想法吗?

谢谢你

sockets websocket node.js

5
推荐指数
1
解决办法
7037
查看次数