2014-01-11 51 views
0

我正在創建一個聊天網站,數百名用戶將與其他人聊天。這是雙向聊天,意味着一個用戶只能與一個用戶聊天。一切工作正常。我正在做的是將所有用戶的消息存儲在數據庫的單個表中,然後用戶通過某個ID訪問特定的聊天記錄。多個用戶訪問相同的數據庫表

我只想問,如果多個用戶同時訪問同一個數據庫表會不會有什麼問題。什麼是極限?與約4用戶它工作正常,但我必須作出任何更改處理超過4個用戶(比如說500)。

網站基於PHP和MySql。我正在使用ClearDB(Free Plan)作爲數據庫,站點託管在Windows Azure上。

回答

0

如果你使用PHP作爲後端素文字,你probalby要連接到數據庫與一個勁兒地用戶(root爲默認值)。您的後端腳本不會或不應該依賴作爲聊天用戶的業務層。

有很多方法來提高這個應用程序的性能。如果它是一個聊天應用程序,我建議使用Redis並將存檔存檔到後臺數據庫(考慮cronjob)。向他人展示消息的簡單任務(這是您的使用案例)太簡單,無法要求RDB工作。

+0

你的意思是說,雖然有很多聊天用戶,但仍然爲數據庫有一個用戶?我想所有的聊天用戶創建一個新的連接到數據庫,這意味着有多個連接?你能解釋一下嗎? – prolific

0

請看看這裏:https://www.cleardb.com/store/azure。基於此,在免費計劃下,您僅限於4個數據庫連接,因此您肯定會看到性能問題。

您既可以升級到一個更好的計劃,或者可以在VM主機數據庫。

相關問題