中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

微服務架構實踐之郵件通知系統改造

發布時間:2020-05-17 13:59:23 來源:網絡 閱讀:225 作者:Java_老男孩 欄目:編程語言

拆分背景

隨著平臺業務增長,功能耦合度越來越高,部署周期變長,代碼樣式混亂、新人入手復雜、獨立功能影響系統的穩定性等等,等等,等等問題。

以郵件通知為案例對服務進行拆分,獨立服務,獨立部署,獨立進程,做到及時上線而不影響平臺正常運營。

以此為例,望大家對于經手的功能模塊,有一個良好的規劃,不要礙于項目進度而給自己或者別人制造麻煩。

拆分原因

  • 郵件通知分散于各個系統,配置變更容易遺漏
  • 代碼分散,功能修復麻煩,相應的增加部署難度
  • 多人經手,代碼風格不同,不易于維護
  • 發送模版不規范,導致發送風格迥異
  • 線上生產環境出現問題,在不影響正常運行的情況下,不易于修復
  • 功能集成在項目,增加了調試的難度
  • 影響平臺穩定性

拆分優勢

系統拆分雖然會增加了復雜性,但是可以得到更多的好處

  • 數據閉環實現自我管,不依賴于任何系統,即去依賴化這樣的好處是別人抖動不會影響到自己
  • 數據異構,即將各個系統的數據傳輸過來,按照自己的要求去處理
  • 基于Maven管理項目,相比于項目中的Ant構建更高級,當然功能不僅僅是構建,還有一些列的優勢
  • SpringMvc+Dubbo實現服務治理,對外開放接口,也可以自定義實現HTTP請求
  • 基于Thymeleaf模版,實現郵件動態內容模板話,良好的封裝,便于開發和查閱
  • 初次采用Log4j2 ,睜大眼睛是二,沒錯,對比log4j和logbak性能大幅度提升
  • 獨立服務,獨立部署,獨立進程,更加靈活易部署,易擴展
  • 使用LinkedBlockingQueue安全隊列做任務隊列(咱不考慮)
  • 額外增加Redis是為了在大量郵件發送請求下緩解郵件發送服務器壓力(咱不考慮)

技術實現

Maven、SpringMvc、Dubbo、Redis、Thymeleaf、Log4j2、MQ

技術問題

如何快速入門Maven
如何輕松搭建一個Maven項目框架
對于在Maven庫中不存在的Jar該如何處理
如何搭建SpringMvc基礎配置
關于Log4j2的正確使用
模版Thymeleaf如何生成靜態文件
任務隊列LinkedBlockingQueue實現
redis使用場景
MQ使用場景

架構圖例

關于Maven

微服務架構實踐之郵件通知系統改造

關于流程

微服務架構實踐之郵件通知系統改造

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

休宁县| 罗江县| 启东市| 印江| 贞丰县| 石渠县| 炎陵县| 东海县| 平谷区| 个旧市| 富平县| 苏州市| 华阴市| 铜山县| 乐山市| 高尔夫| 浦东新区| 澄城县| 西和县| 宁化县| 甘孜县| 银川市| 平潭县| 余干县| 汕尾市| 茂名市| 许昌市| 东阿县| 扎赉特旗| 怀安县| 西青区| 西和县| 玛多县| 通江县| 徐州市| 南宫市| 古蔺县| 宁城县| 九寨沟县| 梁山县| 峨边|