工作描述:
1、項目開發(fā)與實施:參與公司多個核心系統(tǒng)的研發(fā)工作,包括后臺服務、Web應用及數(shù)據(jù)
交互模塊的開發(fā)。
2、代碼編寫與維護:使用Java進行業(yè)務邏輯實現(xiàn),遵循公司編碼規(guī)范,確保代碼質量;負
責模塊的單元測試,提高代碼的穩(wěn)定性和可維護性。
3、數(shù)據(jù)庫設計與優(yōu)化:參與數(shù)據(jù)庫設計,使用MySQL、Oracle等關系型數(shù)據(jù)庫,對數(shù)據(jù)庫
性能進行優(yōu)化,提升數(shù)據(jù)訪問效率。
. 用戶登錄:采用 JWT+MD5 實現(xiàn)用戶的無狀態(tài)登錄,使用 SpringCloud 的 gateway 組件的全局
過濾器進行請求攔截,檢查用戶是否處于登錄狀態(tài)。使用過濾器+ThreadLocal 保證登錄用戶的線
程安全問題。
2. 平臺管理:后臺管理系統(tǒng)功能模塊實現(xiàn)包括:后臺管理系統(tǒng)用戶登錄和網關部署,頻道、敏感詞、
用戶認證審核管理功能。
3. App 端文章查看:使用 Freemaker 作為文章內容模板技術生成靜態(tài) HTML 頁面,Minio 作為文章
靜態(tài)頁面的分布式文件系統(tǒng),避免了文章大文本內容直接存儲 Mysql,減輕了數(shù)據(jù)庫壓力。
4. 文章審核:自媒體端發(fā)布文章,F(xiàn)egin 調用 App 端微服務通過第三方阿里云的內容安全服務來審
核文章內容是否違規(guī),如果未違規(guī)則會發(fā)布成功在 App 端保存文章,違規(guī)則審核失敗,如果返回
不確定,則進入后臺人工審核。
5. 發(fā)布文章:文章發(fā)布可以選擇發(fā)布時間,采用延遲任務技術,有三種方式:JDK 自帶的
DelayQueue,Redis 的 ZSet 數(shù)據(jù)結構,文章發(fā)布時間作為 score 排序,RabbbitMQ 中的死信交
換機和 TLL 控制消息存活時間,本項目采用 Redis 實現(xiàn)延遲任務,將 ZSet 作為未來數(shù)據(jù)對列和
List 作為當前消費隊列