題:
我應該為聊天應用程序使用哪個RDBMS?
randydom
2014-06-20 04:10:18 UTC
view on stackexchange narkive permalink

我正在開發一個聊天項目(服務器/客戶端),所以需要一個RDBMS來保存和加載用戶配置文件,用戶登錄等,就像Skype一樣。

所以我問題是:哪個RDBMS可以滿足我的需求?

會有很多繁瑣的查詢,例如用戶何時登錄,他們的所有個人資料信息和頭像圖片都將從數據庫中查詢並發送到客戶端應用程序。

因此,假設有1000個用戶在同一時間登錄,如果成功登錄,則所有這些用戶都將擁有其個人資料信息,頭像圖片和聯繫人列表。

二 答案:
Craig Ringer
2014-06-20 06:35:50 UTC
view on stackexchange narkive permalink

幾乎所有真正的RDBMS都可以完成您描述的工作。可能甚至SQLite都可以應付您正在談論的規模,儘管幅度並不大。

您最關心的實際上是寫入速率。您將需要進行組提交/提交延遲或啟用異步提交。否則,除非您有一些 fast 存儲空間,否則您很快就會發現自己受提交率的限制,因為每條消息都會產生自己的數據庫提交。找到一種避免輪詢數據庫中是否有新消息的方法。應用的持久數據存儲,但是實時的用戶到用戶消息交換將通過消息隊列/代理進行,數據庫用於記錄消息以供離線檢索,歷史記錄等。

謝謝Craig,我不會使用數據庫來保存用戶之間的消息,而只是用來保存-加載用戶配置文件+登錄憑據+用戶在線/離線/自定義心情消息+控制管理器...那麼如何避免繁重的查詢呢?
這些查詢不會對那麼多用戶“繁重”,它們將變得微不足道。我的袖珍計算器可以在合理設計的數據庫上處理該工作負載。
所以Craig我應該使用PostgreSQL',因為至少對我來說不會有Revert或Undo嗎?
嗯什麼我糊塗了。 “還原”或“撤消”與什麼有什麼關係?他們在這方面是什麼?我不知道你在說什麼。任何數據庫都可以完成工作,因此請選擇您最了解的數據庫。
Craig我的意思是,當我選擇數據庫時,我不會考慮選擇其他數據庫。非常抱歉“還原”和“撤消”
好吧,我只能告訴您PostgreSQL聽起來適合這項工作。幾乎其他任何事情。選擇您最了解的內容。如果您一無所知,請嘗試一下,閱讀一些文檔,找出最能學到的知識。
非常感謝克雷格和其他所有人。我將首先嘗試使用PostgreSQL
Franck Dernoncourt
2014-06-20 04:23:54 UTC
view on stackexchange narkive permalink

任何RDBMS都可以。聽起來您主要關心的是查詢量,而不是RDBMS功能,因此對於大小合適的服務器,MariaDB,MySQL,PostgreSQL等常見RDBMS應該不會有任何問題。

弗蘭克(Franck)非常感謝,實際上,是的,我最關心的是查詢的數量。
我讀過Skype本身使用PostgreSQL嗎?那將是我的第一選擇嗎?
好吧,維基百科是MariaDB(大約一年前切換到了它):)
Skype在頂部使用PostgreSQL的自定義分片和復制功能很多-請參見Skytools。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...