为什么学习MQ
RabbitMQ
搜索與商品服務的問題
目前我們已經完成了商品詳情和搜索系統的開發。我們思考一下,是否存在問題?
-
商品的原始數據保存在數據庫中,增刪改查都在數據庫中完成。
-
搜索服務數據來源是索引庫,如果數據庫商品發生變化,索引庫數據不能及時更新。
-
商品詳情做了頁面靜態化,靜態頁面數據也不會隨著數據庫商品發生變化。
如果我們在后臺修改了商品的價格,搜索頁面和商品詳情頁顯示的依然是舊的價格,這樣顯然不對。該如何解決?
?
這里有兩種解決方案:
-
方案1:每當后臺對商品做增刪改操作,同時要修改索引庫數據及靜態頁面
-
方案2:搜索服務和商品頁面服務對外提供操作接口,后臺在商品增刪改后,調用接口
以上兩種方式都有同一個嚴重問題:就是代碼耦合,后臺服務中需要嵌入搜索和商品頁面服務,違背了微服務的獨立原則。
所以,我們會通過另外一種方式來解決這個問題:消息隊列
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
- 上一篇: 商品详情及规格参数的渲染
- 下一篇: 安装虚拟主机