樂優商城總結

收穫一:明白了電商系統中的一些知識點,例如sku和spu的概念,另外,類目、品牌、商品、規格參數、規格參數組的設計以及它們關係也是相對複雜的,學完之後自己也能梳理清楚了。

收穫二:之前以爲在微服務中,所有的請求都會過網關,由網關進行路由,但是並不是這樣。例如上傳服務,如果上傳文件也經Zuul網關,會造成不必要的網絡負擔,在高併發的情況下,有可能會造成整個系統的癱瘓,因此文件上傳的請求是不經過網關來處理的。

收穫三:庫表設計的技巧。像spu和spuDetail會分在不同的表裏,主要是spu和spuDetail讀的頻率不一樣,並且spuDetail中商品詳情屬於大字段,分開存儲會好一些,同樣的,sku和庫存也會分開存儲,這是因爲讀寫的頻率不一樣。另外,常規庫表設計應該遵循三範式,但是有時候字段冗餘可以減少不必要查詢,這是值得的。

收穫四:學習了JWT,包括JWT的概念、數據格式和交互流程,之前是聽說過,這次是能親自實戰,感覺收穫滿滿。

收穫五:整合SpringBoot+ElasticSearch完成商品搜索,以後有需要用到搜索引擎相關的東西,可以直接拿過來進行優化。

商品分頁展示
在這裏插入圖片描述

實現搜索

leyou-portal 前臺頁面

start nginx 
live-server --port=9002

在這裏插入圖片描述

商品詳情頁(spuId.html)

服務:leyou-goods-web,其端口爲8084
nginx --port=8084
需要portal服務的9092端口提供圖片解析

  • 後臺接口

  • 使用 thymeleaf修改item.html

頁面靜態化(存在磁盤上)

  • nginx代理靜態頁面
    在這裏插入圖片描述
    優化:新建線程處理頁面靜態化
<div th:text-"${message}">數據詳情</div>
1.商品詳情頁
	thymeleaf語法
	1.引入thymeleaf啓動器
	2.關閉thymeleaf緩存:spring.thymeleaf.cache=false ctrl+shift+f9
	3.th:text  th:utext th:each  ${} /*[[${數據模型}]]*/ 
	4.頁面數據的組織

2.頁面靜態化
	context:thymeleaf的運行上下文,存放數據模型
	TemplateResolver:模板解析器,模板的位置,名稱,後綴信息
	TemplateEngine:模板解析引擎
	templateEngine.process("item", context, printWriter)

博客筆記

參考代碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章