Tag: 基准

node.js基准testing不顺利

我写这样一个简单的页面 var connect = require('connect'); connect.createServer( connect.router(function(app){ app.get('/no-db', function(req, res, next){ res.end(JSON.stringify({/* object here*/})); }); }) ).listen(3000); 当我跑步 ab -c 100 -n 10000 http://127.0.0.1:3000/no-db 它处理的请求,有时快,有时慢,有时候刚刚停止,非常不稳定。 这是什么意思? 我正在使用Mac OS X狮子。

Socket.IO超出最大调用堆栈大小

我写了一个小的Socket.IO服务器,工作正常,我可以连接到它,我可以发送/接收消息,所以一切工作正常。 这里只介绍代码的相关部分: var RedisStore = require('socket.io/lib/stores/redis'); const pub = redis.createClient('127.0.0.1', 6379); const sub = redis.createClient('127.0.0.1', 6379); const store = redis.createClient('127.0.0.1', 6379); io.configure(function() { io.set('store', new RedisStore({ redisPub : pub, redisSub : sub, redisClient : store })); }); io.sockets.on('connection', function(socket) { socket.on('message', function(msg) { pub.publish("lobby", msg); }); /* * Subscribe to the lobby and receive messages. […]

如何获得在Nodejs应用程序上使用socket.io的性能基准testing

我最近一直在研究一个nodejs应用程序,它为所有的通信使用开放的套接字连接。 该索引是通过nginx提供的。 我想基准服务器处理大量负载的能力,这意味着我最终将testing我的应用程序pipe理开放套接字的能力,而不是它提供索引文件的能力。 有谁知道一个可靠的方法来做到这一点?

apr_socket_recv:通过对端重置的连接(104)nodejs Ubuntu 14.10 x64 8GB RAM 4核心(VPS)

我正在研究node.js中的一个项目。 该项目是关于位置(GPS)跟踪。 我的项目的最终目标是服务器1M的并发请求。 我所做的是, 在端口8000上的node.js列表中创build一个服务器 谷歌地图的HTML文件,以查找用户位置/ GPS位置 服务器和html文档之间的单个套接字连接传递位置信息 从客户端设备获取用户位置的API(可以是移动应用程序) 一旦服务器通过提到的API接收用户位置,它将通过套接字将该信息发送到客户端(HTML文档)。 它的工作很好,很好。 问题 我正在使用apachebench负载testing我的服务器。 当我增加并发性基准经常与错误中断 apr_socket_recv: Connection reset by peer (104) 我怎么解决这个问题,这个问题的真正原因是什么。 注意:如果我在本地Windows机器上运行相同的服务器,它成功地提供20K请求。 我改变了 ulimit -n 9999999 软硬文件开口限制为100万 既不能解决我的问题。 请帮助我清楚地了解问题。 我如何增加到1M的并发。 是否有可能与一些更多的硬件/networking调谐? 编辑: 我在服务器上使用socketCluster与no的工人相当于核心/ CPU(即)4我的工作人员 服务器端htop命令的CPU使用率为45% 内存使用量约为4GB / 8GB ,交换空间未使用 我用来加载服务器的ab命令是 ab -n 20000 -c 20000 "http://IP_ADDRESS:8000/API_INFO"

我怎样才能基于websocket的Node.js应用程序?

我正在testing使用socket.io和Node.js编写的websockets应用程序的可伸缩性。 我想强调testing和基准性能。 我可以使用哪些工具? 到目前为止,我已经看到了wsbench,但我想探索任何替代品。