2016-11-29 78 views
0

我有一個服務器所有客戶端連接此服務器。可能是最多100個連接用戶在同一時間(我不知道是否結束)。客戶端是通過套接字(TCP/IP)的Android,Web和桌面應用程序。有多少用戶可以通過One MongoDB C++驅動程序進行連接?

只有服務器連接和查詢來自MongoDB的數據。

服務器應用程序正在加載MongoDB C++驅動程序一旦啓動,並且如果連接傳入,服務器爲每個連接創建一個線程和MongoDB client。這是主要的懷疑。

MongoDB驅動程序是否會出現故障? 如果用戶數增加很多,這種方式會導致問題嗎?

我試過86從我的電腦連接,沒有性能或驅動程序的問題。

感謝

回答

1

的限制是真的是你記憶的功能,所以沒有辦法告訴你具體的數字。

這裏有兩個方面的考慮:

  • 如果您的服務器永遠只能連接到數據庫與一套認證證書,那麼你最好創建一個單一mongocxx::pool對象,然後檢查出來自連接線程池中的客戶端。您可以調整池的大小來管理資源消耗。

  • 如果每個客戶端連接需要獨立的身份驗證憑據到數據庫中,那麼你需要在創建每個線程mongocxx::client對象。這將使用更多的內存,並且具有更高的延遲,因爲每個客戶端都會創建與數據庫的新連接(而不是像在池中一樣重新使用連接)。

相關問題