亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

貌似這種寫入量很小,但是很頻繁的不好做事務吧?

貌似這種寫入量很小,但是很頻繁的不好做事務吧?

HUH函數 2023-04-16 18:13:23
現在有一個需求就是每次請求都會發生一次數據庫寫入操作,也可以理解成類似訪問統計的功能(但是實際不是,所以無法直接通過對訪問日志做分析)類似于這樣,任何用戶只要訪問這個頁面就會產生一次數據寫入。一天100萬次PV就會產生100萬次零碎的寫操作。當訪問量很大的時候,我有點擔心sqlite的寫入性能。請問有什么辦法優化?把數據庫放在內存里,然后定時一次性更新到sqlite里?
查看完整描述

2 回答

?
三國紛爭

TA貢獻1804條經驗 獲得超7個贊

不限于flask, 很多應用都需要這樣的優化

1. 使用log而不是數據庫, 比如使用nginx的empty_gif, 然后記錄大量log, 用腳本批量導入數據庫或者運算好結果, 再存儲到數據庫

如果你的數據量足夠大, 那么你應該不止一臺web server, 你需要批處理好幾臺機器上的log.
這些原始數據你可以保存在s3上, 以后作為數據倉庫使用.

2. 使用內存, queue server或者redis那樣的內存方案

也同樣是批處理數據, 寫腳本. 不過這個受到內存大小限制, 比較貴, 需要經常跑腳本.


查看完整回答
反對 回復 2023-04-20
?
精慕HU

TA貢獻1845條經驗 獲得超8個贊

放到 redis,redis事務應該還可以吧,然后再寫到數據庫里

查看完整回答
反對 回復 2023-04-20
  • 2 回答
  • 0 關注
  • 199 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號