2012-05-15 28 views
0

我有,每次跟蹤一個可摺疊的樹形一些事件跟蹤用戶展開樹:高效的JavaScript事件追蹤

jQuery('ul.child-pages div.hitarea').click(function() { 
    piwikTracker.trackGoal(1); // Track TreeView Clicks in Piwik when a user clicks on hitarea 
}); 

我擔心這一點,如果我將數據發送到對性能昂貴我的服務器在每次點擊。有沒有更有效的方法來完成相同的目標?或者我偏執狂,向服務器發送一個小的請求並不是什麼大事情(儘管Piwik是數據庫驅動的,所以我實際上是在每次點擊時在MySQL中編寫某處)。

+0

你可以在很多添加隊列水平。 JavaScript的;使用JavaScript將事件添加到數組中,並將它們一次提交* N *(5?)(但您將丟失被跟蹤的事件,但在頁面關閉前從未提交過)。服務器:將它們存儲在內存中(Memcached?)並定期保存到數據庫。最好的建議是,只有在它成爲問題時才擔心;並添加一個隊列*其中*是瓶頸 – Matt

回答

1

如果你發現它是一個真正的問題(不要浪費時間,如果你不知道這是一個問題),只是對請求進行批處理和閒置一段時間後發送出去