首頁 > 後端開發 > php教程 > 每10秒取得一次數據,求一天內8640次數據的平均值,有什麼好的演算法?

每10秒取得一次數據,求一天內8640次數據的平均值,有什麼好的演算法?

WBOY
發布: 2016-08-27 09:06:54
原創
1224 人瀏覽過

是這樣,我PHP端,每10秒鐘要獲取一次子伺服器的數據,如果每次都寫數據庫,紀錄次數,到最後數據量就太大,如果有100個子服,那就性能問題就更嚴重了,考慮過寫redis,但是寫redis的話,json字符串也是夠大的,而且在計算平均值的時候也比較麻煩,各位有沒有什麼好的算法解決?例如可以隔一段時間計算平均值,或是存資料的時候有什麼好的建議,希望多多幫忙,謝謝大家!

回覆內容:

是這樣,我PHP端,每10秒鐘要獲取一次子伺服器的數據,如果每次都寫數據庫,紀錄次數,到最後數據量就太大,如果有100個子服,那就性能問題就更嚴重了,考慮過寫redis,但是寫redis的話,json字符串也是夠大的,而且在計算平均值的時候也比較麻煩,各位有沒有什麼好的算法解決?例如可以隔一段時間計算平均值,或是存資料的時候有什麼好的建議,希望多多幫忙,謝謝大家!

額。我太蠢了,每次接收數據記錄次數,然後每次來新數據,就加到老數據上,最後再除以總次數,大家看這樣行不行?

題主你的方法沒問題,另外在存資料的時候,你也可以批次寫啊,例如100個伺服器,讀10個寫一次,一共寫10次。 10秒鐘寫10次資料庫對資料庫來講毫無壓力啊

題主方法正確,每來個數據,計算一次評論,旁邊設定一個總次數計數器

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板