簡體   English   中英

mysql表中多次插入(50-100 +)而在線是一個好習慣嗎?

[英]Multiple insert (50-100+) in mysql table while online is a good practice?

我正在處理一個情況,當我的系統在db表中動態插入多個條目時,它可能是1,2或者可能是100或者可能更多,這是使用ajax調用實現的,當插入時將向用戶顯示加載器圖像做了這個動作。

所以,我的問題:這是一個很好的做法,讓這個插入在線並讓用戶看看加載器圖像,或者我們應該在某處收集數據,並在用戶離線時使用cron作業....

請對此提出一些建議......

我會說這里的答案是“它取決於”。 如果您需要用戶了解他們所做的數據更改,即他們可能希望查看數據庫中所做的更改而不是“請等待CRON作業運行”通知,那么答案是“是” “你應該在線插入。

如果可以接受(從用戶體驗的角度來看)在稍后的時間點插入數據,即通過您描述的CRON作業離線,則可以接受離線運行更新。 雖然我個人只會在處理比您描述的數據量更大的數據時這樣做。

如果插入的大小限制在大約100最大值,那么用戶不必等待那么長時間使插入在線運行(盡管它確實依賴於插入的目標數據庫)。 這里的一個建議,如果插入花費很長的時間(因此用戶必須等待看裝載機圖像的同時)是研究為什么刀片這么長時間。 如果您調整插入以使其快速運行,那么您將獲得兩全其美:良好的用戶體驗和數據庫中的正確狀態。

希望有所幫助。

插入100行對數據庫來說無關緊要。 它主要取決於這100行的出現率。 如果以並發方式接近數千行,或者行的內容非常大(有效地對網絡或IO子系統施加壓力),那么它可能成為問題。 但我不擔心。

我假設實際加載和顯示等待圖像需要比DB的插入操作更長的時間(至少這是我的經驗,數據庫插入大約150Hz 24/7)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM