綿密な建物SpringCloudとマイクロサービス(読書思考を)理解()


最近、私はノートが読み取り専用のとき、そこに私は下の仕上げの気持ちを送りたいので、メモを取る習慣が、ですが、書き込みはかなり貧弱であるため、本を「SpringCloudと、建物マイクロサービスを理解する上で、深さ」をお読みください。今第一章

従来のモノリシックアーキテクチャの紹介

説明を簡単にするために従来のモノリシックアーキテクチャーを開く:
単一のアーキテクチャ
構成1.nginxクライアント・ドメイン外入口はモジュール全体の動作に来ます。

以前の同時最適化:
1.サーバーの負荷分散(nginxの)
2.アプリケーションサーバークラスタ構成の多型(Sアーキテクチャモノマー)を追加します
。3.キャッシュ・サーバ・クラスタ(Redisのキャッシュ)は
、主熱別に4. MySQLデータベースを読みますデータベースからサーバに同期され、プライマリ・データベース・サーバにバックアップデータを設定することにより、負荷容量別の読み取りと書き込みのデータベースを向上させることができます

短所:
1.単一のアーキテクチャビジネスコードの多くは、読みやすい、保守し、銀行が不良のまま。
2.質量ユーザー、データベース・アクセスのボトルネック。(解決策:分散データベース、データベース・サブライブラリサブテーブル、ビジネスの現在の理解は、テーブルの必要性の改良、精度単一モジュールのビジネスシナリオの作成および操作です)

どのようなマイクロサービス?

マイクロサービス:短い、マイクロサービスアーキテクチャのスタイル、単一のプログラムは、マイクロサービス、独自のプロセス内の各マイクロサービスが実行され、かつ軽量な通信メカニズム、通常はHTTP RESTfulなAPIの使用方法に発展することがあります。、および展開するための独立したメカニズムの展開を自動化することにより、これらのサービスの運用能力を中心に構築された分割します。これらのサービスは、集中管理の最小値を確保するために、異なるプログラミング言語と異なるデータ・ストレージ・テクノロジーを使用することができます。
いくつかの重要な点である:
ビジネス1.スタンドアロンプログラム、サービスユニット
2との間の相互にHTTPプロトコルサービスを介して通信
3。自動展開ができる
サービスユニットは、プログラミング言語制限されない4.
5.技術サービスデータ記憶部に制限はありません
6.集中管理サービスは
7マイクロシステムは、分散型サービスであり、

マイクロを分割するには?

これは、分割するマイクロビジネスに基づいています。ビジネスの複雑さだけでなく、取り外し可能な、開発者とチームの程度が決定する必要があります。

サービスとサービスとの間の通信は:これは、HTTPサービスユニットを介してマイクロ間の単純な通信メカニズムとすることができます。以下のような、または通信先との間でサービスのサブスクリプション・メッセージサービスをヒットするメッセージを送信することにより、RabbitMQの、Kafaka MQ:それは例えば、によって軽量なメッセージ・バスを通信することができます。

考えマルチモジュールマイクロ展開自動展開サービス(DevOpsチーム)は、ドッカーコンテナの技術を使用、または自動化された展開ツールのソースコンポーネントジェンキンスことができます。

さらに飼育係で、春・クラウドユーレカのコンポーネントを使用して集中管理サービス。領事は、優れた集中管理、サービス管理フレームワークです。

マイクロサービスは、分散型アーキテクチャ、より複雑なモノリシックアーキテクチャよりも、その複雑で、その分散トランザクション、グローバルロック、グローバルIDなどが注目されるべきです。
ミクロの展開サービスの場合:ドッカーコンテナ技術、最高のマイクロサービス展開コンテナで、DevOpsチームは、展開ツールや概念です。

現在検討されている三つの主要な問題

サービス障害のスプレッドは(私の意見ではヒューズを使用することです)
分割サービス(事業の詳細は、その後、業務に応じて分割)
の一貫性を解決するために、分散トランザクション(あるは、データに対処する必要があります:2フェーズコミットプロトコルまたはトリを考えてみましょうフェーズ・コミット)。

新用語:リンク追跡サービス。リクエスト原因見つけることが困難なマルチモジュール、原因の問題の最後の操作に応じて、サービスユニットを介してプロセスに入ってきます。
一般的なリンクの追跡コンポーネントは、GoogleのDapperの、TwitterのZipkin、およびアリEagleEyeの(ホークアイ)を持っています。

春クラウド共通コンポーネント

1、メッセージ登録と発見ユーレカ。スプリングクラウドもCunsulとZooKeeperのサポート
2、ヒューズアセンブリHystrix
3、負荷分散構成要素のリボンを、それがユーレカ、zuul、RestTemplate、Feginが一緒に使用通常です。
ゲートウェイZuulルーティング4、。リボン一緒に、負荷分散、インテリジェントなルーティングを行うことができます。
5、春の雲コンフィグコンポーネントの構成ファイルを一元管理。クライアントサーバー側と分割。これは、リフレッシュ、すべての春クラウドバスとの連携やクライアントクライアントの設定ファイルを指定されています。
6、春のクラウドセキュリティ春のセキュリティコンポーネントは、コンポーネントをカプセル化したものです。ビルド認証サービス、ユーザー認証や認証局に一緒に春のセキュリティのOAuth2で使用するための一般的なアセンブリ。トークンJWTは、マイクロシステムのための認証サービスを確認するか、固定します。
図7に示すように、スプリングクラウドスルースは、分散リンク追跡コンポーネントです。カプセル化されたDapperの、ZipkinとKibana。これを通して、私たちは、サービス間の依存関係を知ることができます。そして、状況を呼び出します。
8、春のクラウドストリームパケットはSpringCloudデータフロー操作です。これは、メッセージの送受信、Redisの、RabbitMQの、Kafakaをパッケージ化することができます。

出版元の記事 ウォンの賞賛2 ビュー163

おすすめ

転載: blog.csdn.net/weixin_38899094/article/details/103885778