相关疑难解决方法(0)

使用webSocket向特定的已连接用户发送消息?

我写了一个代码,用于向所有用户广播消息:

二手代码:( 简要)

// websocket and http servers
var webSocketServer = require('websocket').server;

...
...
var clients = [ ];

var server = http.createServer(function(request, response) {
    // Not important for us. We're writing WebSocket server, not HTTP server
});
server.listen(webSocketsServerPort, function() {
  ...
});

var wsServer = new webSocketServer({
    // WebSocket server is tied to a HTTP server. 
    httpServer: server
});


    // This callback function is called every time someone
    // tries to connect to the WebSocket server
    wsServer.on('request', …
Run Code Online (Sandbox Code Playgroud)

javascript html5 websocket node.js

68
推荐指数
3
解决办法
7万
查看次数

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万
查看次数

node.js最好的facebook连接库是什么?

我见过多个使用node.js和facebook connect的工具.然而,其中许多似乎不完整,过于复杂(非抽象)或不再更新/维护.

我发现了这三个项目:

https://github.com/DracoBlue/node-facebook-client

https://github.com/dominiek/node-facebook

https://github.com/egorFiNE/facebook-connect

https://github.com/ciaranj/node-oauth

其中一位作者甚至讨论了为什么他再次推出自己的,由于其他实现中的缺点:

http://groups.google.com/group/nodejs/browse_thread/thread/bb46cb08e51fdda6

有没有人有任何真正的经验实际验证用户和使用node.js和facebook连接将他们的facebook id存储在他们的数据库中?

我觉得答案几乎没有,我将不得不建立在上述系统之一的基础上,以使事情变得更简单,但我想先检查一下.

编辑:注意确保使用node.js的STABLE版本

javascript facebook node.js

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

为什么Node.js可扩展?

node.js可伸缩,是什么意思?node.js服务器的哪个部分是可伸缩的.我读到它是一种单线程技术,不适合需要大量CPU资源的应用程序.这些事实不符合可伸缩性,那是什么意思呢?

scalability node.js

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

如何扩展Node.js WebSocket Redis服务器?

我正在为Acani编写一个聊天服务器,我有一些关于Scaling node.jswebsockets以及负载均衡器可扩展性的问题.

  1. Node.js负载均衡到底意味着什么?这是否意味着我的服务器应用程序将运行n个独立版本,每个版本都在一个单独的服务器上?

  2. 为了允许一个客户端向所有其他客户端广播消息,我webSocketConnections在服务器上存储了一组已打开的消息.但是,如果我有ñ我的服务器应用程序运行的独立版本,每一个单独的服务器上,然后将我ñ套不同的webSocketConnections

  3. 如果1和2的答案是肯定的,那么如何存储一套通用的webSocketConnections(跨所有服务器)?我认为我可以做到这一点的一种方法是使用Redis Pub/Sub,只需让每个webSocketConnection订阅Redis上的频道.

  4. 但是,那么,单个Redis服务器不会成为瓶颈吗?然后我如何缩放Redis?扩展Redis甚至意味着什么?这是否意味着我有中号在不同的服务器上运行的Redis的独立版本?这甚至可能吗?

  5. 我听说Redis没有扩展.有人会这么说.那是什么意思?如果这是真的,对于pub/sub和/或存储所有广播消息的列表是否有更好的解决方案?

注意:如果你的答案是Acani永远不必扩展,即使地球上所有70亿人(并且正在增长)中的每一个人每秒都向地球上的其他人广播一条消息,那么请给出有效的解释.

scalability load-balancing websocket redis node.js

9
推荐指数
1
解决办法
5196
查看次数