天天看點

B2C電商項目(第六天、Elasticsearch商品上架添加索引、商品下架删除索引庫、商品搜尋、多條件分頁搜尋、排序、高亮顯示)

一、商品上架索引庫導入資料

1.1、需求分析

商品上架将商品的sku清單導入或更新索引庫。

1.2、實作思路

  • (1)在資料監控微服務中監控tb_spu表的資料,當tb_spu發生更改且is_marketable為1時,表示商品

    上架,将spu的id發送到rabbitmq。

  • (2)在rabbitmq管理背景建立商品上架交換器(fanout)。使用分列模式的交換器是考慮商品上架會

    有很多種邏輯需要處理,導入索引庫隻是其中一項,另外還有商品詳細頁靜态化等操作。這樣我們可以

    建立導入索引庫的隊列和商品詳細頁靜态化隊列并與商品上架交換器進行綁定。

  • (3)搜尋微服務從rabbitmq的導入索引庫的隊列中提取spu的id,通過feign調用商品微服務得到sku

    的清單,并且通過調用elasticsearch的進階restAPI 将sku清單導入到索引庫。

B2C電商項目(第六天、Elasticsearch商品上架添加索引、商品下架删除索引庫、商品搜尋、多條件分頁搜尋、排序、高亮顯示)

1.3、代碼實作

1.3.1、發送消息到mq