0
所以我是新的數據庫的東西,我正在一個業餘愛好項目。看看django網站上的民意調查指南:如何將多個更新語句與django結合使用?
可以說我有一個特別受歡迎的民意調查,這會減慢我的數據庫。每次投票都會將選項遞增1.在過去的一分鐘左右收集所有投票並將其合併成一個更新,以便在最後一分鐘內發生多少票數增加投票數量,這樣做會更有意義嗎?
每次點擊都有一個數據庫更新感覺很愚蠢。
這是否有意義?如果有,我該怎麼辦?
所以我是新的數據庫的東西,我正在一個業餘愛好項目。看看django網站上的民意調查指南:如何將多個更新語句與django結合使用?
可以說我有一個特別受歡迎的民意調查,這會減慢我的數據庫。每次投票都會將選項遞增1.在過去的一分鐘左右收集所有投票並將其合併成一個更新,以便在最後一分鐘內發生多少票數增加投票數量,這樣做會更有意義嗎?
每次點擊都有一個數據庫更新感覺很愚蠢。
這是否有意義?如果有,我該怎麼辦?
QuerySet有一個update method,您可以使用它來對已過濾的行執行UPDATE,如eg。這個:
MyModel.objects.filter(anyattribute__in=['one', 'two']).update(otherattribute='something')
沒錯,但是我如何批量查詢並且不會在每個請求上運行這個查詢? – Sandro 2012-03-15 00:53:27
問題變成了,你會在哪裏存儲所有的選票,如果不在數據庫中? – 2012-03-14 21:21:01
@burhan OK夠公平的。也許在這個過程中記憶(首選)?也許在memcached中?顯然,通過對問題的定義,我想象的是準確計數不如快速計數重要的情況,因此失去一些選票是可以的。 – Sandro 2012-03-14 21:22:24