【问题标题】:How do I add oplog support to my Meteor app?如何将 oplog 支持添加到我的 Meteor 应用程序?
【发布时间】:2014-08-21 11:26:32
【问题描述】:

我刚刚使用 Kadira 分析了我的 Meteor 应用程序的性能。

在我的登录方法的 Trace Explorer 中,它报告“您尚未为 Meteor 应用添加 oplog 支持。”

并提供此链接:http://goo.gl/Co1jJc

我点击了链接,根据我阅读的内容,如果您运行的是 0.7 以上的版本,Meteor 默认应该启用 oplog 支持。我正在运行 0.8.2 版,我 Kadira 说我没有为我的 Meteor 应用程序添加 oplog 支持。

如何添加 oplog 支持?

这是报告不使用 oplog 支持的方法的一些细节(来自 Kadira)

collection : users
selector: {"_id":"h5aq5trwZgkDJSKpX"}
function : observeChanges
isCursorMethod: true
fields: {"profile":1,"username":1,"emails":1}
oplog: false
noOfHandles: 1
noOfCachedDocs: 1

【问题讨论】:

  • 您在运行自己的 mongoDB 服务器吗?
  • 不,我不是我正在使用流星部署部署到流星测试服务器。

标签: meteor


【解决方案1】:

来自meteor wiki

您需要自己的 mongoDB 服务器(例如,不是托管在 meteor.com 或共享 mongoDB 主机上)。

然后[仅在 mongo 2.4 上],添加一个可以访问 oplog 连接的新用户:

$ mongo -u YourExistingAdminUserName -p YourExistingAdminPassword mongo-server-1.example.com/admin
cluster:PRIMARY> db.addUser({user: "oplogger", pwd: "PasswordForOplogger", roles: [], otherDBRoles: {local: ["read"]}})

然后,在运行捆绑的 Meteor 应用程序时,设置 MONGO_OPLOG_URL 环境变量:

MONGO_OPLOG_URL=mongodb://oplogger:PasswordForOplogger@mongo-server-1.example.com,mongo-server-2.example.com,mongo-server-3.example.com/local?authSource=admin

【讨论】:

  • 啊,谢谢,我的印象是 oplog 在开发模式下默认启用,并且是用于捆绑 mongodb 的流星默认应用程序。
  • 使用 kadira 显示 db 在过去 24 小时内占用了 84% 的时间。如果为本地流星 mongodb 实现 oplog 支持,是否会大大加快我的应用程序而不对我的代码做任何事情?
  • 很难准确地说出——但是当我们使用 oplog 时,我确实注意到资源使用率有了很大的改善。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-18
  • 2013-04-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多