使用JSON/HTTP/REST接口查询MongoDB
我正在构建一个ASP.Net web应用程序,希望从MongoDB(远程托管)访问数据。我的任何文档都是这样的(已确保在Utc字段上建立索引) 考虑到用户端的性能,我希望以最大速度获取这些数据。我尝试过的一个选项是通过Page.aspx上的JSON调用本地Web服务,它使用MongoDB C#driver查询两个日期(Utc)之间的文档。这是可行的,但似乎使用web服务会在请求/响应周期中增加一些额外的毫秒(使用db.foo.findOne()对单个文档的请求平均只需1.3秒)。该集合中的文档平均数量为50000份,将增加到30000份 我的问题是:使用JSON/HTTP/REST接口查询MongoDB,json,mongodb,rest,datetime,Json,Mongodb,Rest,Datetime,我正在构建一个ASP.Net web应用程序,希望从MongoDB(远程托管)访问数据。我的任何文档都是这样的(已确保在Utc字段上建立索引) 考虑到用户端的性能,我希望以最大速度获取这些数据。我尝试过的一个选项是通过Page.aspx上的JSON调用本地Web服务,它使用MongoDB C#driver查询两个日期(Utc)之间的文档。这是可行的,但似乎使用web服务会在请求/响应周期中增加一些额外的毫秒(使用db.foo.findOne()对单个文档的请求平均只需1.3秒)。该集合中的文档平
- 有没有一种方法可以使用HTTP/REST在两个日期之间查询MongoDB
- 是否有方法使用'>'和'MongoDB的本机HTTP接口来查询MongoDB。你应该继续做你正在做的事情。此外,出于安全目的,您的MongoDB服务器不应公开,您应该始终像目前这样通过中间层。为什么不使用MongoDB的C#驱动程序并直接查询数据?正如我前面所说,目前我使用C#驱动程序并直接查询MongoDB,但是使用C#driver语句的代码是在一个web方法中编写的,该方法是从Page.aspx调用的。我需要知道您是否尝试过MongoDB的HTTP/REST接口,是否可以告诉我们性能结果,以便与C#driver进行比较。不过,我还是希望使用一些基于REST(令牌身份验证)的方法来查询MongoDB,比如CouchDB.10gen持有不同的观点。它决定为每种语言/框架构建特定的API,以使与MongoDB的集成感觉自然,而不是为“所有语言”构建单一的泛在客户端。也就是说,可以在其中一个驱动程序之上构建一个层来提供RESTful接口。例如,虽然我觉得它还没有准备好投入生产,但我已经在.NET驱动程序之上实现了一个OData提供程序。OData是一个RESTful协议。嗯,他们有专门的旋度API吗?请不要说“简单的RESTAPI”,因为它太不完整,而且有缺陷,无法计数。
{ "_id" : { "$oid" : "509501393e8785025c10bc21" }, "Index" : 1, "Url" : "http:...", "CameraId" : 123, "Utc" : { "$date" : 1351955858006 } }