(一)應用分層
1. 【推薦】圖中默認上層依賴於下層,箭頭關係表示可直接依賴,如:開放接口層能夠依賴於
Web 層,也能夠直接依賴於 Service 層,依此類推:
緩存
開放接口層:可直接封裝 Service 方法暴露成 RPC 接口; 經過 Web 封裝成 http 接口; 進行
網關安全控制、 流量控制等。
終端顯示層:各個端的模板渲染並執行顯示的層。 當前主要是 velocity 渲染, JS 渲染,
JSP 渲染,移動端展現等。
Web 層:主要是對訪問控制進行轉發,各種基本參數校驗,或者不復用的業務簡單處理等。
Service 層:相對具體的業務邏輯服務層。
Manager 層:通用業務處理層,它有以下特徵:
1) 對第三方平臺封裝的層,預處理返回結果及轉化異常信息;
2) 對 Service 層通用能力的下沉,如緩存方案、 中間件通用處理;
3) 與 DAO 層交互,對多個 DAO 的組合複用。
DAO 層:數據訪問層,與底層 MySQL、 Oracle、 Hbase 等進行數據交互。
外部接口或第三方平臺:包括其它部門 RPC 開放接口,基礎平臺,其它公司的 HTTP 接口。 、
安全
2. 【強制】二方庫版本號命名方式:主版本號.次版本號.修訂號
1) 主版本號: 產品方向改變, 或者大規模 API 不兼容, 或者架構不兼容升級。
2) 次版本號: 保持相對兼容性,增長主要功能特性, 影響範圍極小的 API 不兼容修改。
3) 修訂號: 保持徹底兼容性, 修復 BUG、 新增次要功能特性等。
說明: 注意起始版本號必須爲: 1.0.0,而不是 0.0.1 正式發佈的類庫必須先去中央倉庫進
行查證,使版本號有延續性, 正式版本號不容許覆蓋升級。如當前版本: 1.3.3, 那麼下一個
合理的版本號: 1.3.4 或 1.4.0 或 2.0.0
架構