クラウド アプリケーション開発のためのマイクロサービス アーキテクチャは、疎結合された小さな (「マイクロ」) サービスのコレクションとしてソフトウェア アプリケーションを構築するアーキテクチャ アプローチです。アーキテクチャ内の各サービスは、データベースへの在庫項目の追加や新規顧客の信用度の確認など、特定のビジネス機能または機能を表します。これらは通常、独立したプロセスとして実行され、アプリケーション プログラミング インターフェイスまたは軽量プロトコルを介して他のサービスと通信します。 マイクロサービスは、サービス指向アーキテクチャと、より優れたアプリケーションを構築する必要性から生まれました。これが新しいアプリケーションを構築するための最も人気のあるアプローチになったのは当然のことです。マイクロサービス アーキテクチャは疎結合と分離を提供するため、私はマイクロサービス アーキテクチャを使用するのが好きです。 利点サービスは疎結合されるように設計されています。他のサービスの内部実装の詳細に直接依存することなく、独立して実行できます。サービスにより、チームはサービスを独立して開発、展開、拡張できるようになり、俊敏性が向上します。サービスは独立して実行できるため、回復力の向上などの追加の利点が得られます。 これは、疎結合に直接関連する独立性と分離性の利点を示しています。各サービスは個別に開発、テスト、展開、拡張できます。 正直に言うと、これが発売されたとき、革命的なものではありませんでした。これは、1970 年代の構造化開発から始まり、オブジェクト指向開発、コンポーネントベースの開発、サービスの使用、マイクロサービスへと続く、アーキテクチャのベスト プラクティスの進化のようなものです。それぞれのアプローチは次のような影響を及ぼします。今後改善できればと思います。 デメリットもちろん、開発においてはただで得られるものはない。それぞれの方法、ツール、言語、アーキテクチャには長所と短所があります。これらを適用する場合、開発者はマイクロサービスの欠点がプロジェクトに与える影響も考慮する必要があります。これらの欠点は、マイクロサービスを取り巻く誇大宣伝の中で見過ごされることがあります。マイクロサービス アーキテクチャの欠点を探ってみましょう。 最大の問題は複雑さです。マイクロサービスはモノリシックアーキテクチャよりも複雑です。システムは多数のサービスに分割されます。アーキテクチャはより複雑になり、異なるサービス間の相互作用を理解することが困難になる可能性があります。 マイクロサービスを展開するためのプラットフォームとして複雑な分散システムも扱う必要があることを考慮すると、これはさらに困難になります。これは、ほぼすべての企業が複数のクラウドを構築および展開する際に生じる副産物です。 配布も考慮すべきもう一つの欠点です。マイクロサービスを使用する場合、サービス間の通信はネットワーク経由で行われることが多く、遅延、ネットワーク障害、機器への負荷の増加を引き起こす可能性があります。このため、マイクロサービス ベースのアプリケーションをデプロイした後はネットワークをアップグレードする必要があり、これによりアプリケーション コストがさらに増加します。 データ管理もより複雑になります。マイクロサービスには独自のデータベースまたはデータ ストアが存在する場合があり、さまざまなサービス間でのデータの一貫性がより複雑になります。データの整合性を維持するには多くの場合、余分な労力が必要ですが、企業は損失が発生するまでこれに気付かないことがよくあります。これは確かに解決可能ですが、ほとんどの人が理解しているよりもはるかに多くのリソースが必要になります。 サービスへの依存は企業にとって問題を引き起こす可能性があります。マイクロサービスはアプリケーション プログラム インターフェイス (API) を介して対話するため、1 つのサービスの変更が他のサービスに影響を及ぼす可能性があります。結果はどうですか?特にアップグレードやサービスの変更時に発生するバージョンの問題と潜在的な互換性の問題。 最後に、リソースのオーバーヘッドがあります。デプロイされたほとんどのアプリケーションでは、複数のマイクロサービス インスタンスを実行すると、単一のモノリシック アプリケーションよりも多くのリソースが消費されます。特に効率的に管理されていない場合、インフラストラクチャのコストが増加する可能性があります。 今何をすればいいでしょうか?クラウド開発者やアーキテクトはマイクロサービス アーキテクチャに熱狂的であることがわかりました。もちろん、マイクロサービス アーキテクチャはすべてのアプリケーションに適しているわけではなく、多くの場合、消極的な選択になります。すでにクラウドに移行しているアプリケーションやクラウドへの移行中のアプリケーションを最新化する場合、必要以上に多くのリソースが必要になります。これは、マイクロサービスの多くの欠点によって発生します。 それにもかかわらず、これらは標準的なアーキテクチャとしてよく使用されます。ただし、使用する前に、長所と短所を十分に検討し、コアアプリケーション要件に重点を置く必要があります。残念ながら、私たちは重点を置くべき多くのことに焦点を当てておらず、それが最終的にコアアプリケーション要件の不一致につながり、非効率につながります。 マイクロサービスは、他のアプローチと同様に、このアーキテクチャを適用する目的、いつ使用すべきか、いつ使用すべきでないかを考慮して、ケースバイケースでのみ検討できます。 元のタイトル:マイクロサービス アーキテクチャの欠点 原作者:デビッド・リンシカム |
<<: 私が8年間使ってきた方法 - Dockerを使ってローカル開発環境を瞬時に構築する
>>: 観測可能なシステム構築に入ってみると、こんなにも多くの問題があることが分かりました...
大学の学期が始まり、春でもあります。Onetechcloud は、すべての VPS を最大 20% ...
v.psはどうですか? v.ps サンノゼはどうですか?皆様のフィードバックによると、China T...
優れたブランドは、優れたコミュニケーションを通じてのみ反映されます。長年にわたり、企業経営者は、消費...
日中、グループ内でVALvpsについてみんなが話しているのを見ました。個人的に、この会社はちょっと信...
多くの場合、ウェブサイトにメンバーが集まった後、メンバーのアクティビティを向上させる方法について考え...
現在、多くのウェブマスターが入札を行っていますが、そのうち約30%は入札後に後悔しています。入札では...
自社のウェブサイトの SEO を行う場合でも、会社のウェブサイトを最適化する場合でも、顧客に SEO...
米国ロサンゼルスのMultacomデータセンターにあるracknerdのWindows VPSが復旧...
10月24日から10月27日まで、上海でMicrosoft Tech Summit 2018が開催さ...
SEO がますます熱を帯びる中、すべてのウェブサイトが SEO 作業を非常に重視するだけでなく、最も...
Google ペンギン アルゴリズムの登場は、英語の SEO 業界に大きな変化をもたらし、ブラック ...
1. 垂直型電子商取引:土地の奪い合いか、それとも集約的な耕作か?新婚生活がこんなに短いとは思いませ...
Zenlayer傘下のクラウドサーバーブランド「Arkecx」は、韓国ソウルに新データセンターを開設...
Google Glassは4月16日より米国で数量限定で1,500ドルで発売される。メディアの報道に...
COVID-19 の発生を受けて、多くの企業が生産性の向上と事業継続の確保を継続的に図るために、ワー...