基于Spring+SpringMVC+Mybatis的分布式敏捷开发系统架构
點擊上方?好好學java?,選擇?星標?公眾號
重磅資訊、干貨,第一時間送達
今日推薦:又一程序員進了ICU:壓垮一個家庭,一張結算單就夠
個人原創100W+訪問量博客:點擊前往,查看更多
前言
本項目不僅僅是一個開發架構,而是努力打造一套從 前端模板 - 基礎框架 - 分布式架構 - 開源項目 - 持續集成 - 自動化部署 - 系統監測 - 無縫升級 的全方位J2EE企業級開發解決方案。
項目介紹
基于Spring+SpringMVC+Mybatis分布式敏捷開發系統架構,提供整套公共微服務服務模塊:內容管理、支付中心、用戶管理(包括第三方)、微信平臺、存儲系統、配置中心、日志分析、任務和通知等,支持服務治理、監控和追蹤,努力為中小型企業打造全方位J2EE企業級開發解決方案。
組織結構
zheng ├──?zheng-common?--?SSM框架公共模塊 ├──?zheng-admin?--?后臺管理模板 ├──?zheng-ui?--?前臺thymeleaf模板[端口:1000] ├──?zheng-config?--?配置中心[端口:1001] ├──?zheng-upms?--?用戶權限管理系統 |????├──?zheng-upms-common?--?upms系統公共模塊 |????├──?zheng-upms-dao?--?代碼生成模塊,無需開發 |????├──?zheng-upms-client?--?集成upms依賴包,提供單點認證、授權、統一會話管理 |????├──?zheng-upms-rpc-api?--?rpc接口包 |????├──?zheng-upms-rpc-service?--?rpc服務提供者 |????└──?zheng-upms-server?--?用戶權限系統及SSO服務端[端口:1111] ├──?zheng-cms?--?內容管理系統 |????├──?zheng-cms-common?--?cms系統公共模塊 |????├──?zheng-cms-dao?--?代碼生成模塊,無需開發 |????├──?zheng-cms-rpc-api?--?rpc接口包 |????├──?zheng-cms-rpc-service?--?rpc服務提供者 |????├──?zheng-cms-search?--?搜索服務[端口:2221] |????├──?zheng-cms-admin?--?后臺管理[端口:2222] |????├──?zheng-cms-job?--?消息隊列、任務調度等[端口:2223] |????└──?zheng-cms-web?--?網站前臺[端口:2224] ├──?zheng-pay?--?支付系統 |????├──?zheng-pay-common?--?pay系統公共模塊 |????├──?zheng-pay-dao?--?代碼生成模塊,無需開發 |????├──?zheng-pay-rpc-api?--?rpc接口包 |????├──?zheng-pay-rpc-service?--?rpc服務提供者 |????├──?zheng-pay-sdk?--?開發工具包 |????├──?zheng-pay-admin?--?后臺管理[端口:3331] |????└──?zheng-pay-web?--?演示示例[端口:3332] ├──?zheng-ucenter?--?用戶系統(包括第三方登錄) |????├──?zheng-ucenter-common?--?ucenter系統公共模塊 |????├──?zheng-ucenter-dao?--?代碼生成模塊,無需開發 |????├──?zheng-ucenter-rpc-api?--?rpc接口包 |????├──?zheng-ucenter-rpc-service?--?rpc服務提供者 |????└──?zheng-ucenter-web?--?網站前臺[端口:4441] ├──?zheng-wechat?--?微信系統 |????├──?zheng-wechat-mp?--?微信公眾號管理系統 |????|????├──?zheng-wechat-mp-dao?--?代碼生成模塊,無需開發 |????|????├──?zheng-wechat-mp-service?--?業務邏輯 |????|????└──?zheng-wechat-mp-admin?--?后臺管理[端口:5551] |????└──?zheng-ucenter-app?--?微信小程序后臺 ├──?zheng-api?--?API接口總線系統 |????├──?zheng-api-common?--?api系統公共模塊 |????├──?zheng-api-rpc-api?--?rpc接口包 |????├──?zheng-api-rpc-service?--?rpc服務提供者 |????└──?zheng-api-server?--?api系統服務端[端口:6666] ├──?zheng-oss?--?對象存儲系統 |????├──?zheng-oss-sdk?--?開發工具包 |????├──?zheng-oss-web?--?前臺接口[端口:7771] |????└──?zheng-oss-admin?--?后臺管理[端口:7772] ├──?zheng-message?--?實時通知系統 |????├──?zheng-message-sdk?--?開發工具包 |????├──?zheng-message-server?--?服務端[端口:8881,SocketIO端口:8882] |????└──?zheng-message-client?--?客戶端 ├──?zheng-shop?--?電子商務系統 └──?zheng-demo?--?示例模塊(包含一些示例代碼等)├──?zheng-demo-rpc-api?--?rpc接口包├──?zheng-demo-rpc-service?--?rpc服務提供者└──?zheng-demo-web?--?演示示例[端口:9999]技術選型
后端技術:
前端技術:
架構圖
模塊依賴
模塊介紹
zheng-common
Spring+SpringMVC+Mybatis框架集成公共模塊,包括公共配置、MybatisGenerator擴展插件、通用BaseService、工具類等。
zheng-admin
基于bootstrap實現的響應式Material Design風格的通用后臺管理系統,zheng項目所有后臺系統都是使用該模塊界面作為前端展示。
zheng-ui
各個子系統前臺thymeleaf模板,前端資源模塊,使用nginx代理,實現動靜分離。
zheng-upms
本系統是基于RBAC授權和基于用戶授權的細粒度權限控制通用平臺,并提供單點登錄、會話管理和日志管理。接入的系統可自由定義組織、角色、權限、資源等。用戶權限=所擁有角色權限合集+用戶加權限-用戶減權限,優先級:用戶減權限>用戶加權限>角色權限
zheng-oss
文件存儲系統,提供四種方案:
阿里云 OSS
騰訊云 COS
七牛云
本地分布式存儲
zheng-api
服務網關,對外暴露統一規范的接口和包裝響應結果,包括各個子系統的交互接口、對外開放接口、開發加密接口、接口文檔等服務,可在該模塊支持驗簽、鑒權、路由、限流、監控、容錯、日志等功能。示例圖:
zheng-cms
內容管理系統:支持多標簽、多類目、強大評論的內容管理,有基本單頁展示,菜單管理,系統設置等功能。
zheng-pay
一站式支付解決方案,統一下單接口,支持支付寶、微信、網銀等多種支付方式。不涉及業務的純粹的支付平臺。
統一下單(統一下單接口、統一掃碼)、訂單管理、數據分析、財務報表、商戶管理、渠道管理、對賬系統、系統監控。
zheng-ucenter
通用用戶管理系統, 實現最常用的用戶注冊、登錄、資料管理、個人中心、第三方登錄等基本需求,支持擴展二次開發。
zheng-wechat-mp
微信公眾號管理平臺,除實現官網后臺自動回復、菜單管理、素材管理、用戶管理、消息群發等基礎功能外,還有二維碼推廣、營銷活動、微網站、會員卡、優惠券等。
zheng-wechat-app
微信小程序后臺
zheng-message
基于Netty實現SocketIO的實時推送系統。支持命名空間、二進制數據、SSL、ACK等功能。
環境搭建
開發工具:
MySql: 數據庫
jetty: 開發服務器
Tomcat: 應用服務器
SVN|Git: 版本管理
Nginx: 反向代理服務器
Varnish: HTTP加速器
IntelliJ IDEA: 開發IDE
PowerDesigner: 建模工具
Navicat for MySQL: 數據庫客戶端
開發環境:
Jdk7+
Mysql5.5+
Redis
Zookeeper
ActiveMQ
Dubbo-admin
Dubbo-monitor
項目演示
預覽圖
數據模型
拓撲圖
項目地址
https://gitee.com/shuzheng/zheng?_from=gitee_search
原創電子書歷時整整一年總結的?Java 面試 + Java 后端技術學習指南,這是本人這幾年及校招的總結,各種高頻面試題已經全部進行總結,按照章節復習即可,已經拿到了大廠offer。 原創思維導圖掃碼或者微信搜?程序員的技術圈子?回復?面試?領取原創電子書和思維導圖。總結
以上是生活随笔為你收集整理的基于Spring+SpringMVC+Mybatis的分布式敏捷开发系统架构的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 硬刚一周,3W字总结,一年的经验告诉你如
- 下一篇: 能挣钱的,开源 SpringBoot 商