マイクロサービス(分散アーキテクチャ)

1.マイクロサービス:サービス分割+リモートコール+サービスクラスター

定义:一种经过良好架构设计的分布式架构方案
目的:高内聚、低耦合
缺点:复杂
名词:心跳、粒度

(1)サービス:1ビジネス=1プロジェクト=1サービス

服务拆分粒度:应用程序的不同功能单元(服务)进行拆分????????????

(2)特徴:高い凝集度、低い結合度

1.単一責任:

1个服务对应1个业务能力

2.サービス指向:

微服务对外暴露业务接口

3.自律性:

团队独立、技术独立、数据独立、部署独立

4.強力な分離:

服务调用做好隔离、容错、降级,避免出现级联问题

(3)コンポーネント:

1.登録センター(監視ノード情報を維持):サービス登録検出フレームワーク

Eureka 、Zookeeper、Consul、Nacos、Redis

2.負荷分散:インプロセスロードバランサー

Ribbon、Nignx、LoadBalancer

3.サービスリモートコールマッピング:

Feign(http协议) 、Open Feign、Dubbo协议

4.フロー制御/劣化/保護:ヒューズ(サーキットブレーカー):サービス劣化ヒューズ

Alibaba Sentinel、Hystrix、Resilience4j
服务监控和保护

5.ユニファイドサービスゲートウェイルーティング(エントリ):

Zuul、SpringCloudGateway
服务监控和保护

6.統合構成センター:

Nacos、 SpringcloudConfig、

7.メッセージバス:

Nacos、Bus
服务监控和保护

8.サービスリンクの監視

Zipkin、Sleuth

(IV)サービスの分割:重複、データベースの独立性を回避する

定义:功能模块拆分、一个功能模块一个服务、每个服务独立的数据库

1.繰り返しの開発を避けます。

不同微服务、不要重复开发相同业务

2.データベースの独立性:

微服务数据独立、不要访问其它微服务的数据库

3.ビジネス露出インターフェース:リモートコールを実現

微服务可以将自己的业务暴露为接口、供其它微服务调用

(5)リモート呼び出し:ビジネスエクスポージャーインターフェイス、要求呼び出し

1.ビジネス露出インターフェース:リモートコール

微服务可以将自己的业务暴露为接口、供其它微服务调用

2.マイクロサービスの実装:SpringCloud

组件:SpringCloudAlibaba
实现:SpringBoot自动装配

3.マイクロサービスの実装:SpringCloudAlibaba

实质:实现部分SpringCloud——SpringCloud的组件
组件:SpringCloudAlibaba

4.マイクロサービスの実装:Dubbo

おすすめ

転載: blog.csdn.net/qq_25482375/article/details/124074951