1.接入層
┌────────────────────────────────────────────┐
│ - CDN / API網關(WAF) │
│────────────────────────────────────────────│
│ - 網關服務(Kong / Nginx + Lua) │
│────────────────────────────────────────────│
│ - 統一認證鑑權(OAuth2 / JWT) │
└────────────────────────────────────────────┘
API網關:安全防護、緩存靜態資源
網關與API管理:統一認證、限流、路由、協議轉換
統一認證鑑權:OAuth 是一種授權協議,JWT 是一種令牌格式
2.微服務調用鏈
┌────────────────────────────────────────────┐
│ - 配置中心(Apollo-阿波羅 / Nacos-諾克斯) │
│────────────────────────────────────────────│
│ - 服務註冊發現(Eureka-尤瑞卡 / Nacos) │
│────────────────────────────────────────────│
│ - 服務治理(Sentinel) │
└────────────────────────────────────────────┘
配置中心:統一管理服務配置、多環境配置隔離
服務註冊發現:管理服務實例與動態發現,支持彈性擴縮容與負載均衡
服務治理:限流、熔斷、降級
3.中間件層
┌────────────────────────────────────────────┐
│ - Redis(緩存/鎖/計數器/熱點削峯/排行榜) │
├────────────────────────────────────────────┤
│ - Kafka / RabbitMQ / RocketMQ(消息中間件) │
├────────────────────────────────────────────┤
│ - Elasticsearch(全文搜索、日誌索引) │
└────────────────────────────────────────────┘
4.數據層
┌────────────────────────────────────────────┐
│ - MySQL / Oracle(分庫分表 / 主從複製) │
├────────────────────────────────────────────┤
│ - MongoDB / HBase(非關係型,存大數據) │
├────────────────────────────────────────────┤
│ - TiDB / OceanBase(分佈式數據庫) │
└────────────────────────────────────────────┘
5.可觀測性層
┌─────────────────────────────────────────────────────┐
│ - 鏈路追蹤:Jaeger-耶格 / SkyWalking │
├─────────────────────────────────────────────────────┤
│ - 日誌收集:ELK(ES + Logstash + Kibana) │
├─────────────────────────────────────────────────────┤
│ - 指標監控:Prometheus-普羅米修斯 + Grafana-格拉法納 │
├─────────────────────────────────────────────────────┤
│ - 統一警告:AlertManager / 釘釘飛書機器人 │
└─────────────────────────────────────────────────────┘
鏈路追蹤:用於追蹤和分析分佈式系統中一次請求的完整調用鏈
指標監控:實時監控服務狀態、資源使用率等指標
日誌收集:集中採集服務日誌,便於問題排查、數據審計
6.運維與運控層
┌────────────────────────────────────────────┐
│ - 任務調度:XXL-JOB / Airflow / Quartz │
├────────────────────────────────────────────┤
│ - CI/CD:Jenkins / GitLab CI / ArgoCD │
├────────────────────────────────────────────┤
│ - 容器管理:Kubernetes / Docker Swarm │
└────────────────────────────────────────────┘
CI/CD:快速上線、回滾、灰度發佈
任務調度:用於按計劃調度定時任務或分佈式任務
容器管理:容器是一種輕量級、可移植、自給自足的軟件運行環境,主要用於打包和運行應用程序及其依賴