草庐IT

Node-red

全部标签

node.js - MongoDB 存储车辆跟踪信息

我正在构建一个类似于Uber的应用程序来跟踪车辆。由于更新频率如此之高(占多个用户),我想知道加快写入mongodb集合所涉及的一般做法。我正在维护一个数据库来存储所有车辆的历史位置信息,但一旦我们投入生产,它的增长势必会非常快。我需要获取最接近某个点的车辆列表。为此,我应该实现一个单独的表(每辆车一行),该表在每次更新后都会更新,还是有更好/更快的方法使用现有表来做到这一点? 最佳答案 两个单独的集合可能是这里的最佳选择。一个包含当前位置的vehicles集合。它甚至可以包括50个最近的位置条目,添加$push和$slice以避免

node.js - findOne 有效但无法全部获取/查找

findOne工作正常db.collection('updates',function(err,collection){collection.findOne({author:req.user._id},function(err,doc){}});我正在尝试获取所有文档而不是一个。我正在将findOne更改为find(如下所示),但它不起作用。我该如何解决这个问题?db.updates.find({author:req.user._id},function(err,doc){}错误信息:它说无法调用未定义的方法“查找”,这意味着该集合未被识别。更新:这也不起作用:db.collectio

node.js - mongoose 查询在 node.js 中不起作用,但在 mongo shell 中有效

我正在尝试根据针对待办事项存储的“userId”获取待办事项列表。使用以下代码不返回任何行。DB.TodoTable.find({"userId":ObjectId("54c12f5f3620c07019e6b144")},function(err,todos){if(err)returnconsole.error(err);console.dir(todos);})Mongoose调试给出:Mongoose:todos.find({userId:undefined}){fields:undefined}[]但是当我在mongoshell中尝试相同的方法时,它起作用了。如下:>db.t

node.js - 使用 mongodb 和 nodejs 的类别层次聚合

我的文档结构如下:{"_id":ObjectId("54d81827e4a4449d023b4e34"),"cat_id":1,"description":"Refridgerator","image":"refridgerator","parent":null,"slug":"refridgerator"}{"_id":ObjectId("54dc38bce4a4449d023b4e58"),"name":"IceCream","description":"IceCream","image":"ice-cream.jpg","slug":"ice-cream","parent":"5

node.js - sailsjs 更改为 mongodb 后仍然使用默认数据库

我是sailsjs的新手,目前正在从事使用sailsjs的项目。我想将默认数据库更改为mongodb。我是在config/local.js中完成的,如下所示connections:{'defaults':'mongo',mongo:{module:'sails-mongo',host:'localhost',user:'',password:'',database:'dbName',schema:true}}在启动mongodb并尝试使用应用程序(我正在处理的)创建一些数据之后,然后当我使用mongodb命令行工具在mongodb中检查它时。它在那里找不到数据,当我在应用程序中检查它时

node.js - 我应该如何在 Mocha 单元测试中初始化 Mongoose 连接?

我一直在到处寻找这个。有些人似乎是这样mongoose.connect('mongodb://localhost/test');然后继续他们的describe调用。那么异步等待呢?vardb=mongoose.connection;db.on('error',console.error.bind(console,'connectionerror:'));db.once('open',function(callback){//yay!});我应该如何在Mocha测试中使用此连接?我应该将所有测试都放在回调中吗?我应该将等待连接的代码包装在单元测试中吗?连接是否会在describe和it之

node.js - Node express ejs 错误 : Failed to lookup view "error" in views directory

我正在使用ejs和mongoose制作一个express应用程序。我收到这个错误:Error:Failedtolookupview"error"inviewsdirectory"/Users/ben/Documents/csMSc/web/site/app/views"atEventEmitter.app.render(/Users/ben/Documents/csMSc/web/site/app/node_modules/express/lib/application.js:555:17)atServerResponse.res.render(/Users/ben/Documents

node.js - Mongoose:通过 Model.collection.insert 批量插入会使 Node.js 崩溃并出现段错误 11

我有10,000,000个文档要插入到MongoDB中。我使用mongoose来创建解析后的JSON的文档(JSON是通过大量txt文件的内容转换创建的)。我开始为每个文档使用Model.create,但速度很慢,需要几天才能完成操作。所以我切换到Model.collection.insert来加快速度。这是我的saveToDB函数(用TypeScript编写):privatesaveToDB(hand:Hand):void{this.bulkHands.push(newHandHistory(hand));if(this.bulkHands.length>=10000){HandHi

javascript - Node.js 应用给出 ERR_EMPTY_RESPONSE

我在使用Node.js、Express、MongoDB和Mongoose构建的应用程序时遇到严重问题。昨晚,当我使用nodemonserver.js来“运行服务器”时,一切似乎都正常。在命令行上,一切似乎都在工作,但在浏览器(特别是Chrome)上,我收到以下错误:没有收到数据ERR_EMPTY_RESPONSE。我在我的机器上尝试过其他Node项目,它们也很难工作。我昨晚做了一个npmupdate以更新我的模块,因为我从MongoDB/Mongoose收到另一个错误{[Error:Cannotfindmodule'../build/Release/bson']code:'MODULE

node.js - meteor 主机上的 meteor 部署错误

我今天有一个没有数据库功能的应用程序,我添加了一些简单的sitemap将带有Mongo集合的代码添加到应用程序并在本地对其进行测试,所有事情都运行良好,但是当我使用meteordeploy命令将应用程序部署到meteor托管时,我的应用程序崩溃了。我从meteorlogs命令中给出了这个细节:[WedJun24201508:01:42GMT+0000(UTC)]WARNINGMongoError:authfailsatObject.Future.wait(/meteor/dev_bundles/0.4.18/lib/node_modules/fibers/future.js:398:1