我想知道是否有人知道是否有可能通过C#中的反应扩展(RX)获得任何编辑MongoDB数据库的实时通知?
这意味着任何第三方都可以编辑MongoDB数据库,服务可以监控编辑并即时对它们做出反应。
我曾经尝试过
我花了大量的时间在Google和其他地方研究这个问题,并且通过了所有可能相关的NuGet包。 我能find的唯一的比赛涉及Java,并且是德语的 。
使用.NET 4.0更新Windows XP上的GitExtensions会得到错误“… 4.0必须安装…”
可靠地检测到我的另一个应用程序正在运行
通过应用程序解锁一个Win7桌面
有没有工作和完整的1-Wire .NET库吗?
WPF应用程序失去触摸function
更新1
看着可以玩的游标,在这里:
http://www.warski.org/blog/2012/11/event-streaming-with-mongodb/
Windows / .NET负载分配和平衡
从Windows服务安全地存储数据的位置?
通过Teamviewer连接时,WPF应用程序崩溃
强制.NET的Windows应用程序。 以英文forms显示数字
单窗口的风格不同于系统的风格
如何跟踪第三方对MongoDB数据的更改
我没有意识到具体的Reactive Extensions实现,但是一般的方法(如在MongoDB 2.6)将创建一个可封闭的集合上的可拖动游标 – 在您引用的德国博客文章中采用了相同的方法。
使用复制操作日志上的可拖动光标,您将在所有数据库中获得可根据需要通过名称空间和操作(插入,删除,更新)进行过滤的更改流。
如果我不使用副本集?
虽然oplog通常仅用于复制,但如果您有独立的MongoDB服务器,则还可以将其作为单个节点副本集运行,唯一的好处是oplog 。
默认情况下,64位系统(OS X除外)上的oplog大小将为可用磁盘空间的5%。 您可以使用oplogSize配置参数来指定不同的oplog大小。 如果您不打算使用复制,则可以将oplog大小减小到更适合您的更改通知的值。 如果您不确定尺寸是否合适,我将按照默认设置离开,稍后按照教程改变Oplog尺寸(如果需要的话)。
要将独立服务器转换为单个节点副本集,您基本上需要:
为您的副本集添加一个唯一名称的replSet配置值(如果您想要的初始大小与默认大小不同,可以选择oplogSize )
重新启动你的MongoDB服务器,使这个改变生效
作为mongo shell中的一次,运行rs.initiate()来创建副本集配置并预先分配oplog
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。