Tag: socketcluster

socketcluster将客户从一个工作者传递给另一个工作者

一般来说,我对socketcluster和套接字相当陌生。 所以我使用了一个来自https://github.com/devonJS/socket-cluster-chat/的terminal聊天示例 我想扩大到2个工人,而不是一个,具体我想有第二个工人作为备份。 所以如果第一个工人死了,我想让所有的客户端连接到备份工作者。 应该有这样做的可能性吗? 我已经玩了一些,但我不能正确的。 我真的很欣赏一个正确的方向指针。 我知道有其他解决scheme像永远或nginx,但我想实现它自己,因为我认为只有那时我已经明白了它。 我没有发布代码,因为这是相当多的,但我可以编辑,如果需要的话。 再次,任何指针将不胜感激。 干杯

Redux动作在状态改变时被不必要地触发

我正在尝试将socketCluster与一个简单的redux应用程序集成在一起。 目前,只有一个function可以将组件当前状态的值通过中间件发送给服务器。 这是我的actions.js文件 export function signupRequest(creds){ return{ type: SIGNUP_REQUEST, isFetching: true, isAuthenticated: false, creds } } 我的减速器: function signUp(state={ isFetching:false, isAuthenticated: localStorage.getItem('id_token')? true : false },action) { switch(action.type){ case SIGNUP_REQUEST: return Object.assign({},state,{ isFetching:true, isAuthenticated: false, user: action.creds }) } 我有一个中间件function,负责发送到服务器的input middleware.js export default socket => store => next => action => { socket.emit('action',action); } 我的客户端的index.js文件 […]

SocketCluster中间件握手与承诺

我build立一个既服务于http和ws的应用程序。 用户首先通过HTTPlogin到Laravel服务器。 这将返回一个用于允许通过WSlogin的JWT。 Ihv添加了一个MIDDLEWARE_HANDSHAKE,它获取该令牌并向Laravel Server发出请求,询问该令牌是否有效,并且该用户有权访问WS(并非每个已login的用户都可以访问WS); 客户代码: var options = { host: '127.0.0.1:3000', query: { source: 'web', token: '', } }; var socket; $.post('http://127.0.0.1:8000/authenticate', { email: 'chadd01@example.org', password: '1234' }, function(data, textStatus, xhr) { options.query.token = data.token; //ALL PERFECT UNTILL HERE // Initiate the connection to the ws server socket = socketCluster.connect(options) .on('connect', function(data) { console.log('CONNECTED', […]

node-mongodb防止websocket数据丢失

我在一个使用SocketCluster作为pub / sub的websocket API的客户端。 通过身份validation后,我通过接收每一个json数据 SCsocket.on('authenticate', function(){ var channel = SCsocket.subscribe('channel1'); channel.watch(function(data){ console.log(data); }); }); 的forms [ { "product": "Product1", "price": "10.0" }, { "product": "Product2", "price": "15.0" } ] 而不是打印数据,我将它保存到一个mongo分贝。 如果有些数据不能上传,我需要某种安全网。 有些东西可以让我从websocket上传数据到mongo db。 什么是最好的做法呢? 我希望这个问题不是太广泛,我是新来的节点和mongo db。 谢谢!

连接socketcluster服务器

我试图实现这个解决scheme (在Win10 x64上),但是由于某种原因,所有的SocketCluster节点都拒绝相互通信。 Sothis是我的。 组态: 1个StateServer [7777] 1 BrokerServer [8888] 2端口上运行的SocketCluster服务器[8000,8001] 1 LoadBalancer [2000]在两个节点之间划分stream量。 我确保国家和经纪人都在倾听: TCP [::]:7777 [::]:0 LISTENING TCP [::]:8888 [::]:0 LISTENING 从我目前所了解的情况来看, BrokerServer和SocketCluster节点都应该连接到StatusServer (?) 我可以成功将BrokerServer连接到StateServer ,但每当我尝试连接任何SocketCluster服务时,它都会报告“套接字挂起”错误。 StateServer : SC Cluster State Server is listening on port 7777 Sever d08298c6-523f-4c1b-9fcc-efd4e92fab22 at address undefined on port 8888 joined the cluster Client 10612bde-514f-40d3-9340-7179a1901376 at address undefined […]