我通过c ++ API将图像插入到mongodb中,如下所示:
bsoncxx::document::value document = bsoncxx::builder::basic::make_document
(kvp("userId", "xZcuQet3QMmS7Q2yc"),
kvp("source",encoded_png),
kvp("createdAt",bsoncxx::types::b_date(std::chrono::system_clock::now()))
);
bsoncxx::stdx::optional<mongocxx::result::insert_one> result =
coll.insert_one(document.view());
我也是从MeteorJs实时提取的。我遇到了几秒钟(5 - 7秒)的延迟。
c ++代码是否可能不刷新插入?
如何立即使用冲洗实时插入?
这可能吗?
答案 0 :(得分:2)
c ++代码是否有可能不刷新插入?
您可以检查MongoDB集合是否正确插入了文档。在这方面,您可以使用MongoDB Shell或其他MongoDB管理器(例如RoboMongo)。
如何立即使用冲洗实时插入?
您可以从Meteor应用程序的服务器端Publish a publication订阅并订阅它以立即获取已发布的数据。
答案 1 :(得分:1)
使用oplog拖尾完成更改检测。这不是在开发模式下完成的。从Meteor代码更新会立即触发更新,但是来自外部源(如Mongo shell或您的C ++代码)的mongo更新需要一些时间才能完成,这就是您所看到的。
在制作中,如果你正确设置了oplog尾部,你就不应该看到延迟。