springcloud 學習記錄 二 開源架構 PIG
阿新 • • 發佈:2018-12-20
碼雲上找了個最近比較火的開源架構 PIG
搭建了一天,終於大功告成,可以慢慢研究學習,再發上微博。
下面介紹一下PIG
基於Spring Cloud、OAuth2.0、Vue的前後端分離的系統。 通用RBAC許可權設計及其資料許可權和分庫分表 支援服務限流、動態路由、灰度釋出、 支援常見登入方式, 多系統SSO登入
- 完善登入:賬號密碼模式、簡訊驗證碼模式、社交賬號模式均整合Spring security oAuth
- 單點登入:基於Srping security oAuth 提供單點登入介面,方便其他系統對接
- 使用者管理:使用者是系統操作者,該功能主要完成系統使用者配置。
- 機構管理:配置系統組織機構,樹結構展現,可隨意調整上下級。
- 選單管理:配置系統選單,操作許可權,按鈕許可權標識等。
- 角色管理:角色選單許可權分配、設定角色按機構進行資料範圍許可權劃分。
- 動態路由:基於zuul實現動態路由,後端可配置化。
- 灰度釋出:自定義ribbon路由規則匹配多版本請求。
- 終端管理:動態配置oauth終端,後端可配置化。
- 字典管理:對系統中經常使用的一些較為固定的資料進行維護,如:是否等。
- 操作日誌:系統正常操作日誌記錄和查詢;系統異常資訊日誌記錄和查詢。
- 服務限流:多種維度的流量控制(服務、IP、使用者等)
- 訊息匯流排:配置動態實時重新整理
- 分庫分表:shardingdbc分庫分表策略
- 資料許可權: 使用mybatis對原查詢做增強,業務程式碼不用控制,即可實現。
- 檔案系統: 支援FastDFS、七牛雲,擴充套件API幾行程式碼實現上傳下載
- 訊息中心:簡訊、郵件模板傳送,幾行程式碼實現傳送
- 聚合文件:基於zuul實現 swagger各個模組的實現
- 程式碼生成:前後端程式碼的生成,支援Vue
- 快取管理:基於Cache Cloud 保證Redis 的高可用
- 服務監控: Spring Boot Admin
- 分散式任務排程: 基於elastic-job的分散式檔案系統,zookeeper做排程中心
- zipkin鏈路追蹤: 資料儲存ELK,圖形化展示
- pinpoint鏈路追蹤: 資料儲存hbase,圖形化展示
模組
pig ├── pig-ui -- element-vue-admin實現[9528] ├── pig-auth -- 授權服務提供[3000] ├── pig-common -- 系統公共模組 ├── pig-config -- 配置中心[4001] ├── pig-eureka -- 服務註冊與發現[1025] ├── pig-gateway -- ZUUL閘道器[9999] ├── pig-modules -- 微服務模組 ├ ├── pig-daemon-service -- 分散式排程中心[4060] ├ ├── pig-mc-service -- 訊息中心[4050] ├ ├── pig-sso-client-demo -- 單點登入客戶端示例[4040] ├ └── pig-upms-service -- 許可權管理提供[4000] └── pig-visual -- 圖形化模組 ├── pig-monitor -- 服務狀態監控、turbine [5001] ├── pig-zipkin-elk -- zipkin、ELK監控[5002、5601] └── pig-cache-cloud -- 快取管理、統一監控[5005]