我正在設計階段(還沒有寫代碼!)一個使用signalR的可擴展聊天應用程序。c#mongodb store last N chat messages
我想限制一個聊天室文檔(用mongodb)來存儲最近的100條消息。
爲了做到這一點,我想到了以某種方式存儲圓形陣列。 我想過維護一個線程安全索引,假設索引,所以0 < =索引< = 100,所以,更新數據庫中給定索引的數組。
現在,我有2個dilemas:
月1日,無論是在一些專門的文本文件或MongoDB中保持這種聊天。
第二,假設我想擴大規模,在多個從屬服務器中保持這個索引是最新的將不會有效。
當我在這裏涉及到性能和效率時,我想花費用戶加入聊天時的大部分資源和時間,而不是當他已經使用它時。
任何想法或建議嗎?
(我不認爲它的辯論一個懸而未決的問題,因爲我問2個具體的問題以及如何解決。)
TIA。