- Amazon.co.jp ・電子書籍 (79ページ)
感想・レビュー・書評
-
マイクロサービスのお勉強。
後半は全く分からなかった。。。
各マイクロサービスは疎結合ゆえ他機能に非依存な技術選択を行うことができ、たとえばそのマイクロサービスが担う責務を実現するのにもっとも適切なプログラミング言語やデータベースを選択できます。また特定のマイクロサービスのみスケールさせて少数のリソースで提供するサービス全体を安定運用したり、 サーキットブレーカー (家庭にある電源のブレーカーを思い出すとイメージしやすいでしょう) のような仕組みを導入することで、動作しないあるいは動作が遅延している機能の提供を諦めつつ全体のサービスとしては機能を維持する選択もできます。加えてマイクロサービスの境界を適切に線引きすることで、各々のマイクロサービスの開発・デプロイ・運用を個別のチームで実施することができ、ビジネスをより早く進めることができるかも知れません。
マイクロサービスアーキテクチャでは、複数のマイクロサービス間で通信することによる遅延などの発生や障害発生時のリトライなど考える必要のある課題が数多く発生します。
マイクロサービスアーキテクチャが馴染まないケースが多々存在すると考えています。
Envoy Proxy *6 は Cloud Native Computing Foundation *7 配下のソフトウェアでもある、ライドシェアサービスを提供する Lyft によって作られた、マイクロサービスの世界の課題を解決するためのプロキシサーバです。
具体的にEnvoyが持つ機能・特徴は以下のようになります。
・C++11で実装されたモダンなプロキシサーバ
・省メモリで高性能
・HTTP/2とgRPCのサポート
・自動リトライ
・サーキットブレーカー
・複数種類のロードバランシング
・動的に設定変更を可能にするAPIの提供
・分散トレーシングやMongoDB、DynamoDBなどのデータベースに対応したオブザーバビリティの提供
またEnvoyはコンテナ上で動作させることを想定して開発されています。…Envoyの担う機能はアプリケーションとはコンテナレベルで独立して、かつ通信はgRPCなどで行うことで特定のプログラミング言語に依存することなく、マイクロサービスの構成に柔軟性を与えることができます。
Istio *8 は Envoy で Data Plane を提供しつつ Control Plane も別途提供することで、マイクロサービス間のコネクションを変更・制御したり認証認可や暗号化によるセキュリティ担保を行う、マイクロサービスの世界でサービスメッシュと呼ばれる機能を提供するソフトウェアです。詳細をみるコメント0件をすべて表示