我正在開發一個應用程序,並且需要跟蹤頁面的任何視圖。幾乎就像它是如何做到的。這是一個用於確定給定頁面受歡迎程度的值。延遲寫入SQL Server
我擔心每次需要記錄新視圖時寫入數據庫都會影響性能。我知道這種邊界線的預優化,但我以前遇到過這個問題。無論如何,價值並不需要是實時的;如果延遲10分鐘左右就可以了。我在考慮緩存數據,並且每X分鐘寫一個大寫應該會有所幫助。
我在Windows Azure上運行,因此Appfabric高速緩存可供我使用。我最初的計劃是創建某種複合鍵(PostID:UserID),並用「pageview」標記鍵。 Appfabric允許您通過標籤獲取所有密鑰。因此,我可以讓他們建立起來,並在我的表格中進行一次批量插入,而不是進行很多小寫操作。表格看起來像這樣,但是可以改變。
int PageID | guid userID | DateTime ViewTimeStamp
該網站仍然會從數據庫中獲得價值,寫入只會延遲,有意義嗎?
I just read Windows Azure Appfabric緩存不支持基於標籤的搜索,所以它幾乎否定了我的想法。
我的問題是,你會如何做到這一點?我是Azure的新手,所以我不確定我的選擇是什麼。有沒有一種方法可以在沒有基於標籤的搜索的情況下使用緩存我只是尋求如何延遲這些寫入SQL的建議。
我不是想追蹤頁面點擊,而且這不記錄。在定義視圖的背後有業務規則。多久用戶必須在頁面上,多長時間,因爲相同的用戶上次訪問,等等... – Joe 2012-03-01 18:37:36