Spring Cloud Alibaba は、2018 年 7 月 27 日に Spring Cloud Incubator ウェアハウスに最初のコードを提出し、2019 年 8 月 1 日に最初の卒業バージョンを Alibaba ウェアハウスにリリースしました。それから約 1 年が経ちました。
Spring Cloud Alibaba は単純なコンポーネントではなく、包括的なスイートです。サービス ガバナンス、構成管理、電流制限とダウングレード、 Ali のオープン ソース エコシステム (Dubbo、RocketMQ など) をサポートする多くのコンポーネントなど、多くのコンテンツをカバーしています。
繰り返しますが、中国のユーザーにとって、Spring Cloud Alibaba は非常に特別な意味もあります。かつて人気のあった Dubboと Alibaba の強力なメッセージング ミドルウェア RocketMQ をSpring Cloud システムに統合します。
Spring Cloud Alibaba は 1 年で、最も知られていない Spring Cloud プロジェクトから Spring Cloud の最も人気のあるプロジェクトへの変革を完了しました。
しかし、理解していない人はまだたくさんいます。知りたくても学ぶ方法がない人もいます。そうすると、Alibaba のアーキテクトほど Spring Cloud Alibaba を理解できる人はいないと思います。今回は、この Ali P8 の友人が私を見つけてくれました。そして、努力すればより多くのプログラマーの友人を助けることができると願っていた
第 1 章 マイクロサービスの概要
インターネットの発展に伴い、Web サイトのアプリケーションの規模も拡大し続けており、システムのアーキテクチャも継続的に変化しています。インターネットの黎明期から現在に至るまで、システム アーキテクチャは大まかに、シングル アプリケーション アーキテクチャ > 垂直アプリケーション アーキテクチャ > 分散アーキテクチャ > SOA アーキテクチャ > マイクロサービス アーキテクチャというプロセスを経てきました。まず、各システム アーキテクチャがどのようなものであるか、それぞれの長所と短所は何かを理解しましょう。
第2章 マイクロサービス環境の構築
今回は、ECプロジェクトで利用した商品、注文、ユーザーを事例として説明します。
第 3 章 Nacos Discovery -- サービス ガバナンス
まずは質問について考えてみましょう
前章の操作により、マイクロサービス間の呼び出しを実装することができました。しかし、サービス プロバイダーのネットワーク アドレス (IP、ポート) をコードにハードコーディングしました。これには多くの問題があります。
-
サービスプロバイダーのアドレスが変更されたら、コードを手動で変更する必要があります
-
複数のサービスプロバイダーが存在すると負荷分散機能が実現できなくなります
-
サービスが増えると、呼び出し関係を手動で維持するのが困難になる
では、どうやって解決するのでしょうか? 現時点では、登録センターを通じてサービス ガバナンスを動的に実装する必要があります。
第 4 章 Sentinel -- サービスのフォールト トレランス
-
高い同時実行性によって引き起こされる問題
-
サービス雪崩効果
-
一般的なコンテナのシナリオ
-
Sentinel を始める
-
Sentinel とは何か、またその機能
-
センチネ|ルール
-
@SentinelResource の使用
-
Sentine ルールの永続化
-
センチネル全体を装う
第 5 章 ゲートウェイ -- サービス ゲートウェイ
-
ゲートウェイの紹介
-
ゲートウェイの紹介
-
ゲートウェイのクイックスタート
-
ゲートウェイコアアーキテクチャ
-
断言
-
フィルター
-
ゲートウェイ電流制限
第6章 探偵 -- リンク追跡
大規模システムのマイクロサービス構築では、システムが多数のモジュールに分割されます。これらのモジュールはさまざまな機能を担当し、システムに結合することで、最終的に豊富な機能を提供できます。このアーキテクチャでは、リクエストに複数のサービスが関与することがよくあります。インターネット アプリケーションは、さまざまなソフトウェア モジュールのセットに基づいて構築されています。これらのソフトウェア モジュールは、さまざまなチームによって開発され、さまざまなプログラミング言語を使用して実装され、複数の異なるデータ センターにまたがる数千台のサーバーに展開されることがあります。いくつかの問題も発生します。
-
問題を素早く見つけるにはどうすればよいでしょうか?
-
故障の影響範囲はどのように判断するのでしょうか?
-
サービスの依存関係と依存関係の合理性をどのように整理するか?
-
リンクのパフォーマンスの問題とリアルタイムの容量計画を分析するにはどうすればよいですか?
第 7 章 Rocketmq -- メッセージ駆動型
-
MQ の概要
-
RocketMQ を始める
-
メッセージ送受信のデモ
-
ケース
-
さまざまな種類のメッセージを送信する
-
メッセージ消費時に注意すべき詳細
第 8 章 SMS -- ショート メッセージ サービス
ショート メッセージ サービス (ショート メッセージ サービス) は、Alibaba Cloud がユーザーに提供する通信サービス機能です。
-
製品の利点: 包括的なカバレッジ、高度な同時処理、メッセージ蓄積処理、シンプルな開発と管理、インテリジェントな監視とスケジューリング
-
製品機能: SMS 通知、SMS 認証コード、プロモーション SMS、非同期通知、データ統計
-
アプリケーションシナリオ: SMS 認証コード、システム情報プッシュ、プロモーション SMS など。
第 9 章 Nacos 設定 -- サービス設定
構成センターの考え方は次のとおりです。
-
まず、プロジェクト内のさまざまな構成をすべて一元管理できるように集中管理し、標準インターフェイスのセットを提供します。
-
各サービスは構成を取得する必要がある場合、構成センターのインターフェイスを使用して独自の構成を取得します。
-
コンフィグレーションセンターの各種パラメータが更新されると、各サービスに通知が来て最新情報をリアルタイムに同期することもできるため、動的に更新することができます。
第 10 章 Seata -- 分散トランザクション
トランザクションは操作単位を指します。この操作単位内のすべての操作は、最終的に、すべての操作が成功するか、すべての操作がキャンセルされるか、一貫した動作を維持する必要があります。簡単に言えば、トランザクションは「何もしないか、すべてを行う」メカニズムを提供します。
コンテンツ表示
要約する
あなたが他の人よりも強いのは、CRUD 作業を何年行ったかではなく、他の人よりも深いスキルを持っているということです。常に CRUD の表面に留まらず、基礎となる原則を理解して習得し、ソース コードの実装に精通し、それを柔軟に使用できるように独自の抽象的思考能力を形成します。これは、あなたにとって重要な方向性です。ボトルネックを突破して目立ちましょう!
Douyin を使用したり、ゲームをプレイしているとき、他の人は学び、成長し、向上するためにここにいます。人々の間の最大のギャップは、実際には思考です。信じられないかもしれませんが、優秀な人はいつも一緒です。。