### 微服務
James Lewis and Martin Fowler (2014) 提出微服務完整概念。[https://martinfowler.com/microservices/](https://martinfowler.com/microservices/)
In short, the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies.-- James Lewis and Martin Fowler (2014)
● 微服務是一種架構風格
● 一個應用拆分為一組小型服務
● 每個服務運行在自己的進程內,也就是可獨立部署和升級
● 服務之間使用輕量級HTTP交互
● 服務圍繞業務功能拆分
● 可以由全自動部署機制獨立部署
● 去中心化,服務自治。服務可以使用不同的語言、不同的存儲技術
### 分布式

分布式的困難
● 遠程調用
● 服務發現
● 負載均衡
● 服務容錯
● 配置管理
● 服務監控
● 鏈路追蹤
● 日志管理
● 任務調度
● ......
### 分布式的解決
● SpringBoot + SpringCloud

### 如何學習SpringBoot
官網文檔架構


- SpringBoot的生態
- 為什么使用SpringBoot ?
- SpringBoot所處的時代背景
- SpringBoot入門
- SpringBoot配置文件
- SpringBoot簡化部署-打jar包
- SpringBoot依賴管理
- SpringBoot自動配置
- SpringBoot容器功能
- SpringBoot應用應該如何編寫
- SpringBoot插件-Lombok
- SpringBoot-dev-tools
- SpringBoot-Spring Initializr
- SpringBoot配置文件-yml
- SpringMVC配置概覽
- SpringBoot靜態資源訪問
- SpringBoot歡迎頁與Favicon
- SpringBoot靜態資源配置原理
- SpringBoot請求參數處理
- SpringBoot普通參數與基本注解
- 模板引擎-Thymeleaf用法介紹
- SpringBoot使用Thymeleaf
- 后臺管理系統-登錄頁面整合
- 后臺登錄邏輯處理
- 抽取公共頁面-leftbar、header
- 公共頁面完善
- 動態表格遍歷
- 攔截器-登錄驗證
- 文件上傳功能
- 自定義錯誤處理
- 數據訪問-JDBC
- 使用Druid數據源
- 整合Mybatis
- 整合Mybatis-Plus
- 使用MybatisPlus完成CRUD功能
- 數據列表分頁功能
- 用戶刪除功能
- SpringBoot整合Redis
- Redis統計url訪問功能
- SpringBoot單元測試
- 單元測試-常用注解
- 單元測試-斷言
- SpringBoot指標監控
- 監控可視化整合
- SpringBoot-Profile功能
- SpringBoot原理解析
- 項目代碼倉庫地址