Articles of 限制

Nodejs服务器Websocket的限制

我想知道是否有某种types的节点服务器可以处理的打开的websockets的限制。 现在我正在用服务器testing几百个节点实例client.js,每个节点都与节点服务器打开自己的websocket连接。 连接大约240个客户端后,出现错误:连接错误:错误:读取ECONNRESET 有没有办法增加或消除这些限制? 我目前正在一台机器上进行testing,但是当testing成千上万个websocket连接时,我们希望转移到Amazon EC2。

MongoDB parseError使用限制和sorting

我只是想在mongoDB中使用sorting和限制,但是我得到一个parseError,只有当我input的限制是很大的。 handCollection = db.collection('hands'); handCollection.count(function(err,res){numHands=res;console.log(numHands)}) //logs 12542 limit=10000 query= query.sort({gameNum:-1}).limit(limit) query.toArray(function(er,hands){ if (er) throw er console.log('Hands Sent:'+hands.length) res.send(JSON.stringify(hands)); )}; 此代码工作时设置限制为10000,但是当我设置限制= 12000,我会得到以下错误: Error: parseError occured at null.<anonymous> (C:\wamp\www\poker-tell\server\node_modules\mongodb\lib\mongodb\connec tion\connection_pool.js:182:34) at EventEmitter.emit (events.js:98:17) at Socket.<anonymous> (C:\wamp\www\poker-tell\server\node_modules\mongodb\lib\mongodb\conn ection\connection.js:389:20) at Socket.EventEmitter.emit (events.js:95:17) at Socket.<anonymous> (_stream_readable.js:746:14) at Socket.EventEmitter.emit (events.js:92:17) at emitReadable_ (_stream_readable.js:408:10) at emitReadable (_stream_readable.js:404:5) at readableAddChunk (_stream_readable.js:165:9) at Socket.Readable.push […]

MongoDB查询部分忽略限制

我正在运行一个查询,尝试从一个集合中获取25条logging,每条logging大约有3-4k条logging。 我需要这些由一个特定的Id,上升。 所以我创build了这个查询: var collection = mongoDb.collection('matches'); collection .find({ matchId: {$exists:true} }) .sort({matchId: 1}) .limit(25) .toArray(function(err, docs) { /* error management */ doIf(isVerbose, logger.info, 'Found {magenta:%s} records.', docs.length); }); 我遇到的奇怪的问题是它返回了22条logging。 当我交换方向(asc到desc)时,它返回了全部25。 我查了一下,发现如果我为search增加一个索引可能会更好,所以我将它添加到了mongo CLI中: db.matches.createIndex({matchId:1}); 并在我的节点应用程序中再次进行testing。 这次(以及之后的所有尝试),我的查询返回了45条logging。 如果我把这个限制改为20,21或22,那么他们都会很好地回复–23个起始似乎会返回一个大于限制的数量。 奇怪的是,我可以在mongo CLI中运行这个查询,它将按照预期返回25条logging。 我想知道我是否在这里失去了一些东西? 如果有什么价值的话,下面是我collections的统计数据: > db.matches.stats(); { "ns" : "[database].matches", "count" : 3678, "size" : 910236192, "avgObjSize" : […]

是否有一个nodejs /系统带宽限制处理通过套接字的许多GET请求?

我有一个节点js脚本运行,通过套接字泵(服务器响应许多小的HTTP请求),由于某种原因带宽被限制为1MB /秒(有时小于1MB / s,但从来没有更快)。 我有一个这样的系统设置或需要调整的nodejsconfiguration参数? 我在不同的机器上有这个问题(内存越来越less)localhost – localhost和external – localhost,来自tcptrack的屏幕截图: 1MB / s限制

限制Node.js中的请求中的主体内容长度

代码很简单。 我只对youtube.com源代码的第一部分感兴趣,例如,当内容长度高于10000时,我想停止下载数据。 我一直在试图做到没有成功。 有任何想法吗? var request = require('request'); var cheerio = require('cheerio'); var url = 'https://www.youtube.com/'; request(url, function(err, resp, body) { if (err) throw err; $ = cheerio.load(body); });

node.js限制一个路由,所以它可以用jquery加载,但不能通过url访问

我有一个单一的页面应用程序,使用jQuery加载页面中的HTML块。 在我的服务器上有这些块的路由设置。 然而,如果我的路线之一(例如:/ signIn)被直接input到我的url之后,那么这个html块会被加载到页面上(mySite.com/signIn)。 我怎样才能发送一个404错误代码的url后input的任何path,但仍然允许使用jquery调用路线(它的意图)? 谢谢! 编辑: 谢谢你的答案! 这是我写的代码,如果有人愿意使用它。 它redirect任何请求,而不是从jquery加载,到主页。 然而,它允许任何带有扩展的path被加载(如js和css),除非它们被input到url中,隐藏你的样式表,javascript和图像。 //Prevent url path entry app.get('*', function (req, res, next) { //Check for extension if (/\.\w*$/.test(req.url)) { //headers['accept'] is comma separated, get the first value var splitPath = req.headers['accept'].split(','); //If first entry is text/html then it was requested in the url, Redirect! if ( splitPath[0] […]

MongoDB Node.js的每个方法

我有一个数据存储在数据库中的数组。 当我查看数据是否已经存在时,即使使用limit(1),each()也会调用两次。 我不知道这里发生了什么 collection.find({ month: 'april' }).limit(1).count(function(err, result){ console.log('counter', result); }); collection.find({ month: 'april' }).limit(1).each(function(err, result){ console.log('each', result); }); collection.find({ month: 'april' }).limit(1).toArray(function(err, result){ console.log('toArray', result); }); 此时,4月份确切的1个数据集已经存储在集合中。 上面的查询会产生这样的输出: count 1 each {…} each null toArray {…} 在mongo shell中,我检查了count()和forEach()方法。 一切都按预期工作。 这是一个驱动问题吗? 我做错了什么?

使用mysql在nodejs中进行分页

在我的项目中,我需要使用分页查询数据库,并提供用户根据当前search结果进行查询的function。 有点像限制,我无法find任何使用nodejs的东西。 我的后端是MySQL,我正在写restapi。

使用Express限制对Node.js的访问

我确实有一个运行在服务器上的node.js脚本。 我想要的是,它不会直接从浏览器访问,也希望只有某些域/ IP-s可以调用它! 可能吗?!

在Node.js中调节请求

我有一个数组。 我可以使用foreach方法遍历它。 data.forEach(function (result, i) { url = data[i].url; request(url); }); 请求函数正在对给定的url进行http请求。 但同时提出这些要求会带来种种问题。 所以我认为我应该通过引入某种计时器来减慢速度。 但我不知道如何能够结合使用setTimeOut / setInterval的循环 请注意在服务器(nodejs)而不是浏览器上执行此操作。 感谢您的帮助。