如何使用 pollingThrottle 和 pollingInterval?

2024-06-26

所以我的应用程序中有一些东西我不需要立即反应并找到有关属性的信息轮询节流阀 and 轮询间隔在文档中。所以这里基本上是我设法找到的有关这些属性的所有信息:

pollingIntervalMs 数 (仅限服务器)在服务器上观察时轮询此查询的频率。以毫秒为单位。默认为 10 秒。

pollingThrottleMs 编号 (仅限服务器)重新轮询之间允许的最短时间。增加此值将节省 CPU 和 mongo 负载,但代价是更新速度变慢 用户。不建议减少此值。以毫秒为单位。默认值 至 50 毫秒。

所以第一个问题 - 我不太清楚这些属性之间有什么区别,也许有人可以向我解释一下? ( pollingThrottleMs 是订阅更新的速率限制, pollingIntervalMs 是我们检查更新的频率,据我所知) pollingIntervalMs 默认值是 10 秒?真的吗?那为什么房子名字里有Ms呢?那是不对的。

然后我尝试在查询中设置这些属性,如下所示:

Meteor.publish("currentRoom", function (roomName) {
    return Rooms.find({name: roomName}, {
      pollingThrottleMs: 5000,
      pollingIntervalMs: 5000
    });
});

我预计一个客户端的更新和另一个客户端的反应性更新之间会有 5 秒的延迟,但它似乎根本不起作用。我什至在观察中放置了断点,它会立即收到通知。难道我做错了什么?它是如何工作的?


那 10 秒应该是 10 毫秒。

  1. 确保您仅更新 MongoDB 而不是 Minimongo - 例如,如果您通过 Meteor 方法进行更新,请确保您没有客户端存根。

  2. 尝试这个:

    Meteor.publish("currentRoom", function (roomName) {
      return Rooms.find({name: roomName}, {
        disableOplog: true,
        pollingThrottleMs: 10000, 
        pollingIntervalMs: 10000
      });
    });
    

您必须禁用 oplog tailing。如果不这样做,每次 MongoDB 日志更改时您仍然会收到通知。

我与客户端的观察员对此进行了测试,结果有效。

Cursor.observe({
  changed: (newdoc, olddoc) => {
    console.log('changed');
  }
});

附加信息:

https://github.com/meteor/docs/blob/version-NEXT/long-form/oplog-observe-driver.md https://github.com/meteor/docs/blob/version-NEXT/long-form/oplog-observe-driver.md http://info.meteor.com/blog/tuning-meteor-mongo-livedata-for-scalability http://info.meteor.com/blog/tuning-meteor-mongo-livedata-for-scalability

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 pollingThrottle 和 pollingInterval? 的相关文章

  • 返回游标数组不显示任何结果

    我试图通过这样做来解决两个集合的 连接 foundUsers function var searchUser Session get searchUser user search criteria var usf User find sea
  • NodeJS、Mongoose:如何使用 mongoose 获取相关数据

    我有 2 个集合 它们是一对多的关系 如何使用猫鼬获取相关数据作为嵌套文档 我有 2 个模式 它们是这样相关的 var userSchema mongoose Schema name String age Number var postSc
  • Ember-data和MongoDB,如何处理_id

    我正在将 ember data 与 Rails 和 MongoDB 一起使用 并且在 MongoDB 中的 id 字段中存储 ID 的方式遇到问题 Ember data 将使用 id 作为 ID 的默认字段 所以我尝试像这样覆盖它 App
  • 获取背景图片url值

    我正在尝试获取背景图像 url 的值 url 直接在元素标签中使用 style 属性内联设置 如下所示 a style background image none a 我尝试做 var url this css background ima
  • 如何在猫鼬中使用.slice

    我在我的应用程序中得到了这个 Score find match in ids sort score sort descending slice skip limit exec function err scores if err score
  • 过滤$lookup结果

    我有 2 个集合 带有示例文档 reports id R1 type xyz 报告文件 id F1 reportid R1 time ISODate 2016 06 13T14 20 25 812Z id F14 reportid R1 t
  • Symfony2 的 mongoDB 返回一个可记录游标而不是我的实体

    我目前使用 DoctrineMongoDbBundle 向我的 mongodb 数据库发出请求 这是我的控制器中的调用 dm this gt get doctrine odm mongodb document manager entitie
  • 合并两个 $or 语句

    我正在尝试执行一个由两个组成的查询 or s Date1 Date2 NULL NULL NULL TODAY NULL TOMRW TODAY TODAY TODAY NULL TOMRW NULL 我已经标记了与星号匹配的行 Date1
  • Mongoose 在结果的 _id 字段中返回“new ObjectId”

    当我尝试查询时 结果包含 id其中包含 new ObjectId 的字段 如何避免这种 new ObjectId 并仅将哈希值包含为字符串 由于此问题 将数据作为 JSON 响应发送回失败 下面是一个基本的demo 我的查询代码 book
  • MongoDB:查询速度慢,即使有索引

    我有一个网页 它使用 MongoDB 来存储和检索各种测量结果 突然 在某个时候 我的网页变得如此缓慢 以至于无法使用 事实证明 我的数据库是罪魁祸首 我进行了搜索 但没有找到任何解决我的问题的方法 我很抱歉 因为我对 MongoDB 还很
  • Mongo中如何定义每个分片的分片范围?

    比方说 该文件是 x Number 我有 3 个碎片 除了自动分片之外 我可以具体定义 shard1 仅包含数据 x 你可以 可以手动预分割块 如下所述 http www mongodb org display DOCS Splitting
  • 如何避免 mongodb 聚合框架中的 $pushing null

    如果该字段不存在 push 会聚合空值 我想避免这种情况 有没有办法为 push 运算符创建子表达式 以便跳过空值而不将其推入结果数组中 聚会有点晚了 但是 我想做同样的事情 发现我可以用这样的表达式来完成它 Pushes events o
  • mongodb对话系统

    我正在实施一个verymongodb 上的简单对话系统 这个想法应该是 当我打开一个 convo 时 它应该显示发送和接收的消息 到目前为止一切正常 并且应该非常容易 通过使用像这样的伪代码这样的简单查询 from my id AND to
  • 删除 MongoDB 查询结果中的 "scanAndOrder" : true

    所以我的数据库中有一个带有以下分片键的集合 cl yyyy mm user id N 当我执行以下查询时 db collection find cl 2012 03 user id in users id lt new ObjectId 4
  • MongoDb 如何按月和年聚合

    我是 mongodb 新手 正在尝试学习 MongoDB 查询 id ObjectId 59815d4704ca1760a45957ca userEmail email protected cdn cgi l email protectio
  • Mongoose 密码哈希

    我正在寻找一种使用 mongoose 将帐户保存到 MongoDB 的好方法 我的问题是 密码是异步散列的 setter 在这里不起作用 因为它只能同步工作 我想了两种方法 创建模型的实例并将其保存在回调中 哈希函数 在 保存 上创建预挂钩
  • 如何使用meteor将存储在数据库中的json转换为csv

    我想下载从数据库 nodeDB 生成的 CSV 文件 该文件包含以下条目 这些条目应该仅充当标题 META TEMPLATE NAME B TEMPLATE GROUP Product KEYWORDS cc TEMPLATE SUBGRO
  • Mongoose:populate() / DBref 或数据重复?

    我有两个收藏 Users Uploads 每次上传都有一个User与之相关 当我需要知道他们的详细信息Upload被查看 最佳做法是在上传记录中复制此数据 还是使用填充 http mongoosejs com docs populate h
  • 填充对象 ID 数组

    我的架构 var playlistSchema new Schema name type String require true videos type mongoose Schema Types ObjectId ref Video co
  • Mongodb $addToSet 嵌套对象

    我正在尝试更新嵌套在另一个哈希下的数组对象 IE name mike instagram id 3423 slug mike photos 现在我想使用 addToSet 附加到 instagram 照片对象 但我不知道如何操作 这可以将照

随机推荐

  • CMake的execute_process和任意shell脚本

    CMake s execute processcommand 似乎只让你执行一个进程 而不是你可以输入命令 shell 的任意行 问题是 我想使用管道 文件描述符重定向等 但这似乎不可能 另一种选择对我来说会非常痛苦 我认为 我应该怎么办
  • 导出的 DLL 函数未按词法排序?

    嗯 今天我遇到了一个奇怪的事情 我不久前编写了自己的 GetProcAddress 版本 用于从远程进程获取函数地址 显然我花了很多时间阅读 PE 架构来找出解决这个问题的最佳方法 根据 PECOFF v8 规范 我认为这是最新的官方规范
  • 无法为非报亭应用程序提交具有自动续订订阅的应用程序[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我在提交带有自动更新订阅的非报亭应用程序时从未遇到过问题 但当我尝试提交应用程序进行审核时 我刚刚开始看到此错误 免费和自动续订的应用内购
  • 如何快速将云Firestore中的数据保存到变量中?

    我想将文档中的特定字段保存到变量中 到目前为止我的代码 func getDocument path String field String nil gt some Any var returnVar Any DEFAULT VAL var
  • 以编程方式断开和重新连接显示器

    问题 以编程方式断开和重新连接显示器的最佳方法是什么 目标 关闭显示器上的视频输出 黑屏 无背光 然后重新打开 想象一下从显示器上拔下视频线 然后重新插入 我的尝试 Get the monitor to disable uint iDevN
  • TfidfVectorizer 赋予停用词较高的权重

    给出以下代码 import pandas as pd from sklearn feature extraction text import TfidfVectorizer import urllib request the lib tha
  • 大型数据集的报告工具/查看器

    我有一个数据处理系统 可以根据其处理的数据生成非常大的报告 我所说的 大 是指该系统的 小 执行在转储到 CSV 文件中时会产生大约 30 MB 的报告数据 而大数据集大约为 130 150 MB 我确信有人有更大的想法 大 但这不是重点
  • Wingdings/Symbol 字符与其 Unicode 等效项之间的映射

    MsWord 使用 Wingdings 和 Symbol 字符作为项目符号 默认情况下它们的十六进制值为 F0A7 和 F0B7 我想将项目符号转换为其 Unicode 等效项 当然 这取决于实际使用的字体 因此 F0A7 Wingding
  • 如何在C中复制结构体数组

    我已经定义了类似的结构 typedef struct char oidkey int showperf char oidrealvalue BUFSIZE char oidlimits struct oidpairs 我有结构数组 stru
  • 如何使用 VBA 在 Excel 2010 工作表中添加选项按钮以进行分组?

    I want to add many option button to an excel worksheet not to a VBA form and want to group them by row The result should
  • 按键时应用程序窗口恢复

    在我的应用程序中 我添加了一项功能 可以在按键时 按 ESC 或暂停 中断按钮时 将应用程序窗口最小化到系统托盘 因此 当按下它们时 窗口会最小化 有没有办法添加功能来在某些按键上恢复应用程序窗口 即使其他应用程序当前处于活动状态 例如我按
  • gRPC 服务器如何注意到客户端已取消服务器端流式调用?

    我想使用 gRPC 让客户端订阅服务器生成的事件 我有一个 RPC 声明如下 rpc Subscribe SubscribeRequest returns stream SubscribeResponse 其中返回的流是无限的 要 取消订阅
  • 背景上可见的片段

    我正在开发一个应用程序 该应用程序具有在 XML 文件中定义的三个片段 HeaderFragment MainFragment FooterFragment 第一个屏幕启动三个片段 Header 和 FooterFragment 是静态的
  • foreach 与 LINQ .ForEach() [重复]

    这个问题在这里已经有答案了 为什么LINQ ForEach需要一个List对象 而foreach声明只需要IEnumerable 我更喜欢使用foreach当有多行和单行语句的 LINQ 时 只是为了可读性 但什么是首选 为什么 为什么会有
  • 使用 Bearer Token 在 C# 中构建 post HttpClient 请求

    我并不是真正的 C 专家 我有一个 C 中的 post httpRequest 需要开发 为此我创建了这个方法 它接受一个 Uri 一个对象和一个不记名令牌 该方法旨在构建调用请求 private HttpClient client new
  • 在 SelectList 集合中设置所选项目

    我有一堂具有以下属性的课程 它构建了一个SelectList现有列表中的对象 然后设置所选项目 public SelectList ProviderTypeList get SelectList list new SelectList my
  • 卡桑德拉吃掉内存

    I have 卡桑德拉2 1并设置以下属性 MAX HEAP SIZE 5G HEAP NEWSIZE 800M memtable allocation type heap buffers top 实用程序显示 cassandra 占用了
  • 如何在 Tomcat7 中部署 Grails 3.0.1 war 文件?

    我怎样才能部署一个Grails 3 0 1Tomcat7 的非嵌入式版本中的 war 文件 我收到的只是一个空白页或 404 错误 我可以成功部署其他 war 文件 所以我知道这不是 Tomcat 的问题 我的版本以及我采取的步骤如下 Se
  • 如何使用 pandoc 将目录中的所有 .md 文件编译为单个 .pdf,同时保留 YAML 标头数据?

    我有一个 md 文档目录 每个文档都包含一个指定文档的 YAML 标头title author date categories tags等 该目录包含日记条目 文件名只是条目的日期 我使用 pandoc 为每个 md 文件生成 PDF 没有
  • 如何使用 pollingThrottle 和 pollingInterval?

    所以我的应用程序中有一些东西我不需要立即反应并找到有关属性的信息轮询节流阀 and 轮询间隔在文档中 所以这里基本上是我设法找到的有关这些属性的所有信息 pollingIntervalMs 数 仅限服务器 在服务器上观察时轮询此查询的频率