mongodb连接池在MVC

本文关键字:MVC 连接 mongodb | 更新日期: 2023-09-27 18:13:23

我的应用程序是基于asp.net (MVC)和mongodb。

我正在跟踪每个客户端请求并将其写入我的mongodb数据库。

当前,每个客户端请求都打开新的数据库连接。

这是我的代码:

public class MyController
{
    public ActionResult MyOperation(string input)
    {
        const string connectionString = "mongodb://URL";
        var client = new MongoClient(connectionString);
        var server = client.GetServer();
        var database = server.GetDatabase("dbname");
        var collection = database.GetCollection<ElcoRequest>("MyCollection");
        // Create new row
    }
}

我想使用相同的DB-Connection(s)为所有的请求。(而不是我目前的解决方案,为每个DB打开新的连接)

我知道当使用ADO时。NET中,有一种叫做"连接池"的东西。在mongodb中等效的是什么?

mongodb连接池在MVC

连接池是在MongoClient类内部处理的。你不需要自己实现池化。

只要你使用相同的连接字符串和设置,你可以创建新的MongoClient实例,就像你现在做的。

MongoDB MongoClient文档:

到服务器的连接在后台自动处理(使用连接池来提高效率)。