什麼是正確的方式來做用戶活動日誌,如Facebook如何做,並且真的很快。我有一個客戶的網站,它有活動記錄用戶的活動並顯示給他/她的朋友/家人/追隨者,但速度很慢,我們願意對數據庫進行更改,如果它有助於提高用戶交互性並做日誌正確的方式。我確定很多人已經在研究它,但我無法找到它的任何鏈接,它顯示了它如何完成正確的方式,所以我也可以實現。任何幫助?正確完成用戶活動的數據庫結構?
期望的活動輸出
什麼是正確的方式來做用戶活動日誌,如Facebook如何做,並且真的很快。我有一個客戶的網站,它有活動記錄用戶的活動並顯示給他/她的朋友/家人/追隨者,但速度很慢,我們願意對數據庫進行更改,如果它有助於提高用戶交互性並做日誌正確的方式。我確定很多人已經在研究它,但我無法找到它的任何鏈接,它顯示了它如何完成正確的方式,所以我也可以實現。任何幫助?正確完成用戶活動的數據庫結構?
期望的活動輸出
那麼,Facebook的架構具有高度可擴展的,他們有很多的「前門」對數據的請求,以及背後,一些真正的肌肉緊縮數據有效。
第一個問題是,這個應用程序應該處理多少個併發用戶? 100,只要確保你的數據層索引良好,並且你正在做「聰明」的查詢(使用索引標準準確地獲得你需要顯示一個頁面的數據,不多不少)。如果查詢返回的數據很多,請在查詢中將其分塊(SELECT TOP 25 ... FROM Activity WHERE Activity.Date < <date of the last record of the last page you retrieved>
)數以百計,請考慮使用複製服務器來分隔非實時或不常使用的任務,或簡單地實現負載平衡。高達數百人,開始思考具有分佈式表和批量交易運輸的服務器集羣。除此之外,您超出了我在企業架構方面的專業知識。
你在任何情況下,第一個步驟:
目前的結構是什麼?知道這將有助於人們提出改進方法。什麼樣的機器硬件,多少用戶,當前響應時間,期望的響應時間等。否則,問題就會變得模糊。 – dmcnelis 2011-02-02 22:25:20
好吧,我想知道什麼是這個東西最好的表結構,真的很簡單的方法來說是Facebook。每個人都知道Facebook上的活動是如何工作的,只是想知道我應該使用哪種表結構來設置它們。 – Basit 2011-02-02 22:52:43