最近學完redis,想加入到自己的商城專案中,對購物車模塊有些疑問
我是覺得因為購物車涉及頻繁修改資料庫(修改商品數量),所以適合用redis。那我們這種場景下應該怎么用redis呢?傳統的修改是先改資料庫,再把redis清掉,但是感覺這個場景不適合這樣,因為并沒有減輕資料庫的寫壓力。我的想法是把商品數量的改變全都放到redis中進行,但是什么時候刷回資料庫就很難去把握了,而且這樣子感覺一致性也不好保證。還請大佬指點一下實際生產中redis在購物車中的應用。
uj5u.com熱心網友回復:
一般來說大部分的生產環境資料庫的負荷都是來自查詢。如果資料更新非常頻繁,也可以考慮暫存到redis,再用定時任務去把redis資料同步到RDB。 但是不推薦這種做法。
uj5u.com熱心網友回復:
那我們實際的生產中,在購物車模塊是如何利用redis的呢,也只是用它來緩解讀是么
uj5u.com熱心網友回復:
要明確為什么要使用redis,,,使用redis要解決什么問題?。。uj5u.com熱心網友回復:
我不知道你的
一般來說大部分的生產環境資料庫的負荷都是來自查詢。
如果資料更新非常頻繁,也可以考慮暫存到redis,再用定時任務去把redis資料同步到RDB。 但是不推薦這種做法。
那我們實際的生產中,在購物車模塊是如何利用redis的呢,也只是用它來緩解讀是么
我不知道你的購物車模塊是什么東西,如果只是單純為了學習,可以把商品資訊快取到redis里,或者用redis排序所有商品中被購物車加入過最多的商品串列,還有統計點擊量,還有把一些命中率高的,處理速度慢的查詢快取到redis行等等,或者你的系統是MSA結構,或者多臺服務器可以用redis做分布式鎖來管理事物等等,,,,吧?
uj5u.com熱心網友回復:
一般來說大部分的生產環境資料庫的負荷都是來自查詢。
如果資料更新非常頻繁,也可以考慮暫存到redis,再用定時任務去把redis資料同步到RDB。 但是不推薦這種做法。
那我們實際的生產中,在購物車模塊是如何利用redis的呢,也只是用它來緩解讀是么
我不知道你的
一般來說大部分的生產環境資料庫的負荷都是來自查詢。
如果資料更新非常頻繁,也可以考慮暫存到redis,再用定時任務去把redis資料同步到RDB。 但是不推薦這種做法。
那我們實際的生產中,在購物車模塊是如何利用redis的呢,也只是用它來緩解讀是么
我不知道你的購物車模塊是什么東西,如果只是單純為了學習,可以把商品資訊快取到redis里,或者用redis排序所有商品中被購物車加入過最多的商品串列,還有統計點擊量,還有把一些命中率高的,處理速度慢的查詢快取到redis行等等,或者你的系統是MSA結構,或者多臺服務器可以用redis做分布式鎖來管理事物等等,,,,吧?
哦哦哦,我應該知道我的問題在哪里了,我想問的應該是怎么去解決購物車商品數量頻繁修改這個問題,這個操作一般不用處理么,我感覺可能會對資料庫造成很大的壓力耶,難道只用MQ做個削峰就可以了么?(沒啥實際作業經驗,所以很多場景只能自己想象,見諒..)
uj5u.com熱心網友回復:
對于購物車這種,購物訂單這種需要頻繁修改資料的操作行為,肯定是要把資料放到redis快取中的,你想啊,資料庫是不支持大量資料并發操作的,否則資料庫就會崩的,而且資料庫的速度相對redis來說慢的可不是一星半點,就拿平常淘寶做活動來說,單單是一件物品的數量操作可能就達到了每秒上萬次的操作,如果使用資料庫,假定它不會崩潰,你可能經常遇到明明你買的時候商品數量還有很多,但是商家會告訴你買晚啦,沒貨啦。這就是因為資料庫和后臺資料互動太慢導致的。放回資料庫也很簡單的,設定定時任務就好啦,在訪問資料量小的時候進行操作轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/31111.html
標籤:Java相關
上一篇:jsp文本框只能輸入數字
