我知道这个问题在这里被多次询问过。但是,我无法找到令人满意的答案并得出结论。
此问题专门针对Mongo DB版本3.2。我应该为不同的应用程序设置单独的数据库和集合,还是只包含一个包含所有集合的数据库?
为了进一步简化它,假设我在服务器上有大约15-20k的应用程序。是建议为每个应用程序创建一个不同的数据库(使用10个集合/应用程序),还是只创建一个数据库并存储所有集合(20k应用程序* 10个集合= 200k集合)?
此外,这将从单个节点应用程序调用,因此需要考虑具有多个数据库连接的性能。
答案 0 :(得分:0)
我是否应该为不同的应用程序提供单独的数据库和集合,或者只有一个包含所有集合的数据库。
据我所知,这个问题没有任何具体的答案或任何具体的算法,这取决于实际与数据库的连接。 连接的数量取决于即将发生的并发请求数,因此首先要从逻辑上看,为每个应用程序创建不同的数据库是否真的值得 或者另一种方式(使用10个集合/应用程序)
第二种方法是你可以通过一些负载测试来判断响应时间(如果可能的话)