マイクロコンテナは大型コンテナよりも優れていますか?

マイクロコンテナは大型コンテナよりも優れていますか?

最新の開発のベストプラクティス、特にマイクロサービス アーキテクチャを実装する場合のベストプラクティスには、Docker、Kubernetes、その他のコンテナ テクノロジの使用が含まれます。

コンテナは、企業がアプリケーションを展開および使用する方法を変えています。開発と配信の効率と移植性の向上は、企業がコンテナを使用する重要な理由です。コンテナ テクノロジーにより、開発者はオペレーティング システムや依存関係を気にせずにソフトウェアを実行できます。したがって、コンテナは、関連する構成とライブラリが組み込まれた正式な環境により、ソフトウェア アーキテクチャを大幅に簡素化します。

コンテナ化の2つの主要な指標

一見すると、これは単純に思えます。アプリケーションをコンテナにパッケージ化して実行すれば完了です。しかし、状況は常に理想的であるとは限りません。アプリケーションのパフォーマンスが低下したり、クラウド インフラストラクチャのコストが増加したりする可能性もあります。クラウドでメモリ フットプリントを拡張せずにアプリケーションを効果的に構築するには、パフォーマンスに密接に関連するコンテナーの2 つの重要なメトリックを理解する必要があります。

  • コンテナのメモリ消費量。
  • コンテナ イメージのサイズとそれがアプリケーションのパフォーマンスにどのように関係するか。

ソフトウェア アプリケーションに適切なアーキテクチャを選択することは、製品開発において最も重要なステップの 1 つです。特にマイクロサービス システムが普及している今日では、これを習得するのは簡単ではありません。より良いアプローチは、業界の革新的なプラクティスを採用して、アプリケーションが安全になり、今後何年も置き換える必要がなくなるようにすることです。この観点から、利用可能な最小のマイクロ コンテナを見つけることは、アプリケーションのコンテナ化変換の選択と展開プロセスにとって良い選択です。

マイクロコンテナと大型コンテナ: どちらのパフォーマンスが優れていますか?

コンテナの普及とマイクロサービスやクラウドに向けたソフトウェア構造の発展に伴い、大規模なコンテナでは継続的デリバリーのビジネス環境における多くの欠点が徐々に明らかになってきています。ソフトウェア業界では、最適化を通じて大規模コンテナの欠点を軽減するために懸命に取り組んでいます。これまで、コンテナ化を行う場合、アプリケーションを最初に実行したオペレーティング システムに対応するコンテナを使用していました。たとえば、アプリケーションが元々 Centos 上で実行されている場合は、Centos コンテナを使用してアプリケーション イメージを構築します。このアプローチは、安全で段階的な移行を実現するため正しいものです。コンテナ OS には、サーバーとして実行するために必要なすべてのコンポーネントがありますが、アプリケーションには不要になりました。したがって、コンテナ化の次のステップは、アプリケーションをスリム化してマイクロコンテナに移植することです。

マイクロ容器は、効率性を高めるために改良された最適化された容器です。ソフトウェア アプリケーションにさらなるスケーリング、分離、パリティを提供するすべてのファイルが引き続き含まれています。ただし、イメージ内に保持されるファイルの数が最適化された、改良されたコンテナーです。マイクロコンテナに残る重要なファイルは、シェル、パッケージ マネージャー、および標準 C ライブラリです。

マイクロコンテナと非配布の違い

一方、コンテナ分野では「Distroless」という概念が存在します。 Distroless をベースイメージとして使用することは、コンテナのセキュリティを保護するための優れた方法です。アプリケーションとそのランタイム依存関係のみが含まれます。 Distroless イメージは未使用のファイルをすべて抽出します。マイクロコンテナとディストロレスの概念の違いを強調する価値があります。マイクロコンテナには、システムを完全な状態に保つために必要な未使用のファイルがまだ含まれています。マイクロ コンテナーは通常のコンテナーと同じオペレーティング システムに基づいており、同じ機能をすべて実装しています。唯一の違いは、開発者による改良により内部ファイルが強化され、サイズが小さくなっていることです。マイクロコンテナには最適化された数のファイルが含まれているため、アプリケーションの実行に必要なすべてのファイルと依存関係が含まれますが、より軽量で小さな形式になります。たとえば、BellSoft Alpaquita の場合、マイクロコンテナは OpenJDK アプリケーションの起動に必要なすべてのファイルと、OpenJDK が実行される標準ツールのみをホストします。この小さなコンテナは BellSoft チームによって大幅に改良されており、その小さなサイズにより Alpine Linux よりも高いレベルのセキュリティが実現されています。まとめると、マイクロコンテナの主な特徴は次のとおりです。

  • サイズが小さいです。
  • 配信、ダウンロード、拡張の速度が向上。
  • 安全。マイクロコンテナは、大型コンテナに比べて安全性が大幅に向上しています。イメージから不要な追加ファイルを削除すると、外部からの攻撃の可能性を減らすことができます。

マイクロコンテナの選択

現在、最小限のコンテナであるベースイメージが数多く存在します。良い例は Debian Slim です。 Debian Slim は最も人気のある Linux ディストリビューションの 1 つであり、より大規模な Debian docker から生まれました。もう一つのよく知られたマイクロコンテナは Alpine Linux です。これら 2 つのユニバーサル ベース イメージには、大きなコンテナーなどのすべての内部コンポーネントが引き続き含まれており、ファイル サイズも改善されているため、パフォーマンスは比較的優れています。ユニバーサル ベース イメージは、サイズが縮小されているにもかかわらず、より大きなコンテナーと同じように動作します。 Distroless イメージは非常に異なり、通常はアプリケーションとそのランタイム依存関係のみを持ちます。 Distroless イメージは大幅に縮小され、パッケージ マネージャーなしと見なされますが、実際の目的と操作は異なります。マイクロコンテナに戻ると、さらに小さくすることができ、メトリックをさらに改善することができます。たとえば、BellSoft (OpenJDK の主要な貢献者) は Alpine Linux でこれを実行し、Alpine よりも小さい新しいイメージである Alpaquita Linux をリリースしました。より軽量かつ小型で、OpenJDK で完全に使用できます。 OpenJDK に統合された musl の移植版の作成者である BellSoft は、この強力な機能をさらに活用し、Alpine Linux を改良して、その上に Alpaquita Linux を作成しました。 Alpaquita Linux は、サイズが小さいだけでなく、タイムリーなアップデートと完全に使用可能な OpenJDK 標準ツールも保証されます。

要約する 

要約すると、マイクロコンテナはクラウドネイティブアプリケーションにとって明らかな利点があります。大きな容器は違います。彼らの価値は、より優れた普遍的な基本画像ソリューションを市場に提供することにあります。変革のさまざまな段階にある企業は、適切な選択と展開を行うことができます。

元のリンク:

https://dzone.com/articles/how-microcontainers-gain-against-large-containers

翻訳者について

51CTO コミュニティ エディターの Cui Yingfeng 氏は、1970 年代生まれで 10 年以上の職務経験を持つプログラマーです。長年にわたり、Java 開発、アーキテクチャ設計、コンテナ化などの関連業務に従事。 Java に精通し、Maven、Jenkins、その他の DevOps 関連ツール チェーンの使用に熟練しており、コンテナ化されたソリューションの計画、設計、実装に優れています。

<<:  クラウド コンピューティング環境の主な課題を管理し、対処する方法

>>:  サーバーレス環境でマイクロサービスを設計するにはどうすればよいでしょうか?

推薦する

PIAYUN:国慶節特別オファー、香港\米国クラウドサーバー、CN2回線、月額20元から、時間は2倍

今年の国慶節に向けて、Piayunは香港クラウドサーバーと米国クラウドサーバーの限定版をリリースしま...

yourserver - スウェーデンの VPS、1Gbps の帯域幅、無制限のトラフィック、苦情防止、著作権なし、月額料金は 4 ユーロから

yourserver はラトビアの VPS 販売業者です。設立年は明らかではありません (このサイト...

地元の映画鑑賞マイクロブログの成長の旅

私はローカライズされたテーマのWeiboアカウントを運営しています:@济南观看团。ここでは、私自身の...

成功したインターネットマーケティングでは販売促進は不要になる

昨今、企業はオンラインマーケティングに注目し始めていますが、インターネットはどの程度成功していると言...

病院の入札データ分析スキルを4つ学ぶ - 初心者からエキスパートまで

あなたも私と同じ経験をしたことはありませんか。病院の入札を始めて間もなく、結果が理想的ではなく、その...

クラウドコンピューティング市場は2028年までに1兆2,664億ドルに達する

人工知能と機械学習はクラウド コンピューティング市場を牽引し、2028 年までに 1 兆 2,664...

道威道:動画サイトの著作権調査:中小規模の動画サイトが抑制される

著作権戦争(TechWeb の写真)動画サイトでの人気テレビ番組の再生状況調査(TechWebチャー...

対外貿易産業は順調に発展しており、中国企業動態はインターネットマーケティングを支援している。

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています企業の発展...

サイトに1件のトラフィックしかもたらさないキーワードを無視しないでください

ウェブサイトを構築するとき、私たちは皆、重量とトラフィックを求めます。多くの人は、重量が重いほどトラ...

quickclickhosting-$2.99/256m/20g ハードディスク/500m 無制限/480g DDOS 保護

quickclickhosting も比較的新しいホスティングプロバイダーです。公式サービスはたくさ...

Google のジッパー発明者記念の Google SEO

Google がアルゴリズムを更新して以来、SEO 作業の難しさは、ガーゼの層を通して少女を見るよう...

360 Search が堀を築く: Security Guard にはデスクトップ検索が組み込まれている

昨年8月16日、Qihoo 360は360 Search(so.com)を正式にリリースした。 1 ...

草の根レベルのマーケティングを差別化する方法

友人が私のブログにメッセージを残しました。「残念ながら、自分のセールスポイントをどうアピールすればい...

ウェブサイトのキーワードランキングを安定させる方法

現在、多くのウェブサイトのキーワードランキングは不安定です。不安定になる原因は、不安定なサーバー、過...

エンタープライズWebサイト構築システムMetInfo V6.1.0の新機能の紹介

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますV6.0....