クラウド ポータビリティに関する 3 つの考慮事項: イベント駆動型アーキテクチャ (EDA) とサーバーレス コンピューティング

クラウド ポータビリティに関する 3 つの考慮事項: イベント駆動型アーキテクチャ (EDA) とサーバーレス コンピューティング

このシリーズの記事では、アーキテクチャや設計、クラウドのポータビリティに関して考慮すべき具体的な詳細、クラウド時代の技術ロックインを最小限に抑える方法、クラウドの柔軟性を最大限に発揮する方法など、さまざまな側面を検討します。

Akamai クラウドコンピューティングの詳細を読む

海外のクラウドサービスならア・カマイクラウドコンピューティング

以下では、イベント駆動型アーキテクチャとサーバーレス コンピューティングについて簡単に説明します。クラウド ポータビリティにおけるクラウド ネイティブおよびコンテナー テクノロジの考慮事項を確認するには、ここをクリックしてください。また、クラウド ポータビリティにおけるマイクロサービス アーキテクチャの重要性を確認するには、ここをクリックしてください。

イベント駆動型アーキテクチャ( EDA ) は、イベントまたはメッセージに反応して特定のアクションをトリガーしますが、直接的な同期通信には依存しません。 EDAは非同期であるため、コンポーネントは独立して動作でき、変化するワークロード下でのシステムの応答性とパフォーマンスが向上します。

ファイルのアップロードと新規ユーザーの登録という 2 つの簡単な例を考えてみましょう。これらの操作は両方とも、同期リクエスト-レスポンス フロー ( REST APIなど) を通じて実行できますが、ファイルのアップロードのステータスを更新したり、新しいユーザーのデータをデータベースに挿入した後に次のステップをトリガーしたりするには、新しいリクエストを行う必要があります。メッセージを常にポーリングしているタスク ランナーのグループがあり、それらのタスク ランナーは、 無線の静かな期間またはまったく関係のない期間でも休みなくポーリングを行うとします。弾力性のあるクラウド コンピューティング リソースを従量課金制で使用すると、このアプローチによって膨大な無駄が生じると考えられます。 EDA はプッシュベースのアプローチを通じてこの問題を解決します。

イベント駆動型システムは、必要に応じてコンポーネントを追加または削除することで迅速に拡張でき、コンポーネントが使用できなくなってもシステムが動作を継続できるため、障害に対する耐性が非常に高くなります。 EDA は、コンポーネントがイベントに反応し、完全なデータ セットが受信されるまで待つことなく、データが到着するとすぐに処理を開始できるため、リアルタイム処理や大規模データ処理にも適しています。

EDAを使用する理由

  • システムの柔軟性の向上:イベント駆動型アーキテクチャの疎結合の性質により、システム全体に影響を与えることなくコンポーネントを簡単に変更、追加、または削除できるため、変化するニーズにシステムを適応させることができます。
  • スケーラビリティの向上: EDA は非常に便利な水平拡張をサポートしており、企業はワークロードやトラフィックの増加に対応するために必要に応じてコンポーネントやサービス インスタンスを追加できます。
  • システムの回復力の向上: EDAの非同期通信と分離されたコンポーネントは、1 つのコンポーネントの障害が必ずしもシステム全体の中断につながるわけではないため、フォールト トレランスの向上に役立ちます。
  • リアルタイム処理機能: EDA は大量のデータと複雑なイベント パターンをリアルタイムで処理できるため、急速に変化する状況に対して即時の洞察や迅速な対応が必要なビジネス シナリオに最適です。
  • リソース使用率の最適化: EDA は、イベントが発生したときにのみイベントに反応することで、リソース使用率を最適化し、継続的にプロセスを実行する必要性を減らし、企業がコストを節約して効率を向上させるのに役立ちます。

クラウドネイティブのサーバーレスコンピューティング

EDA はサーバーレス コンピューティングなどのアプリケーション開発モデルもサポートしているため、移植可能でベンダーに依存しないコードを記述でき、機能、サポートされる言語、コストなどの要素に基づいて、自分に合ったクラウド プロバイダーを柔軟に選択できます。 Functions-as -a- Service ( FaaS ) は、多くのクラウド プロバイダーが提供する人気の製品であり、ユーザーは機能とアプリケーション インフラストラクチャを 1 か所で管理できます。クラウド プロバイダーは責任者として、サーバーの構成、スケーリング、メンテナンスなどの基盤となるインフラストラクチャを主に処理するため、開発者はコードの作成に集中できます。

多くの一般的なFaaSサービス ( AWS Lambda Azure Functions Google Cloud Functionsなど) は、プラットフォームネイティブ サービスと呼ばれています。通常、ユーザーを特定のクラウド プロバイダーのプラットフォームに制限し、他のプラットフォームに簡単に移行できないようにします。 Akamai はKnativeを何度も導入してきました。これは、わずか数秒でアプリケーションを0からN のレプリカ拡張できる、オープンソースKubernetesベースのサーバーレス運用プラットフォームです。レプリカ0にスケールする機能は非常に便利で、 KubernetesKnative はオンデマンドでリソースを再割り当てできます。

このコードは複数回並行して呼び出すことができるため、リソースを自動的にスケーリングするには 1 つのコードのみを使用する必要があります。基本的に、上記のプラットフォームネイティブのFaaS製品を使用することは推奨されません。このようなサービスのコストは予測できないためです。しかし、マネージドKubernetesサービスを通じて当社のコンピューティング インスタンス上でKnative を実行する場合、ユーザーは、一部のサービスで無料割り当てが不足し、実行回数に基づいて課金されることを心配することなく、固定かつ予測可能な料金のみを支払う必要があります。

サーバーレスを使用する理由

  • コスト効率:サーバーレス コンピューティングの従量課金制の価格モデルにより、コストを節約できます。企業は事前にリソースを割り当てる必要がなく、実際に使用したコンピューティング時間に対してのみ料金を支払う必要があります。
  • スケーラビリティの向上:サーバーレス コンピューティングでは、需要に合わせてリソースを自動的に拡張できるため、手動による介入やダウンタイムなしでアプリケーションがワークロードの急増をスムーズに処理できるようになります。
  • 運用オーバーヘッドの削減:サーバーレス コンピューティングでは、クラウド プロバイダーが基盤となるインフラストラクチャを管理するため、 ITチームはアプリケーション開発、イノベーション、その他の戦略的な活動にさらに集中できます。
  • 市場投入までの時間の短縮:サーバーレス コンピューティングの簡素化された開発および展開プロセスにより、企業は新機能、更新、バグ修正をより迅速にリリースでき、競争上の優位性を高めることができます。
  • 柔軟性と適応性:サーバーレス コンピューティングにより、企業はさまざまなプログラミング言語とテクノロジーを使用してアプリケーションを構築および展開できるため、需要の変化に適応したり、必要に応じて新しいテクノロジーを組み込んだりすることが容易になります。

前述のように、サーバーレス コンピューティングはイベント駆動型アーキテクチャに基づいています。つまりHTTPリクエスト、ファイルのアップロード、データベースの更新などのイベントによって関数をトリガーできます。これにより、アプリケーション アーキテクチャが簡素化され、スケーラビリティが向上します。

サーバーレス関数の世界もステートレスである必要があります。関数は、異なる呼び出し間でデータや状態を保存しないため、関数を簡単に拡張でき、関数が失敗した後に簡単に置き換えることができます。また、関数の有効期間は短くする必要があります。これにより、リソースが無駄にならず、関数を迅速に拡張できるようになります。関数のタスクを長時間実行する必要がある場合は、代わりに継続的に実行されるサービスを使用する方が適切かどうかを評価する必要があります。

サーバーレス関数では、関数が期待どおりに実行されていることを確認し、存在する可能性のある問題やエラーを検出するために、監視とログ記録も必要です。この目的には、 PrometheusGrafanaなどのログ アグリゲータやアプリケーション パフォーマンス モニタリング ( APM ) ツールを使用できます。また、認証、承認、暗号化などのベストプラクティスを使用して関数を保護することも忘れないでください。これにより、アプリケーション自体だけでなく機密データも保護されます。関数を本番環境にデプロイする前に、徹底的なテストを実行して、期待どおりに動作し、バグがないことを確認します。

サーバーレス コンピューティングはコスト効率が非常に優れていますが、コストをさらに削減し、効率を向上させるには、機能の最適化、リソースの共有、自動スケーリングなど、さまざまなコスト最適化手法が必要です。ユーザーは、ワークロード、使用パターン、要件を評価して、サーバーレス コンピューティングが特定のユースケースに対してコスト効率の高いアプローチであるかどうかを判断する必要があります。さらに、サーバーレス プラットフォームを選択する際には、予想される使用パターン、パフォーマンス要件、価格体系を考慮する必要があります。

この記事の内容は大丈夫でしょうか? Akamai のクラウド サービス ソリューションの詳細もご覧いただけます。今すぐ登録すると、 100ドル相当の無料クレジットを獲得できることをお忘れなく。早速、この記事で紹介した機能やサービスを実際に体験してみましょう↓↓↓

海外のクラウドサービスならAkamaiが最適です!

高可用性MySQL/MariaDBリファレンス アーキテクチャと豊富なアプリケーション例について学ぶには、 Akamaiをフォローしてください

<<:  ビッグモデルの時代において、Kingsoft Cloudはクラウドを基盤とし、差別化された戦略で未来を計画しています

>>:  エッジコンピューティングの支出は2026年までに3,170億ドルに達する

推薦する

blueangelhost: 著作権侵害の申し立てを無視するプロフェッショナルなオフショアホスティング、VPS、専用サーバー、その他のサービス

2009年に設立されたblueangelhostは、主にオフショアホスティング関連の事業を運営してお...

リアルタイムの洞察を強化: コンピューター ビジョンとエッジ コンピューティングの相乗効果

今日の急速に変化する世界では、最先端技術のシームレスな統合がイノベーションの基盤となっています。その...

クラウドにおけるコスト最適化について知っておくべきことは何ですか?

今日のクラウド コンピューティング テクノロジーと利用可能なさまざまなプラットフォームにより、ほぼす...

企業ウェブサイトランキング低下に対するいくつかの改善策

ウェブサイトのランキングは、企業のオンライン マーケティングの成功を測る重要な基準です。これは企業に...

serverfield: 台湾サーバー、100Mbps帯域幅、高速直接接続

serverfieldの台湾サーバーを紹介します。以前Hostcatでも紹介しました(台湾への直結サ...

仕事再開後、ネットプロモーション会社の金儲けの助っ人登場

ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービス仕事を再開した後、クライ...

クラウド データベース移行の 5 つのステップ

この流行により、クラウド コンピューティングの発展が加速しました。昨年、中国のクラウドコンピューティ...

大規模アプリケーションで Apache Kafka を使用するための 20 のベスト プラクティス

[51CTO.com クイック翻訳] Apache Kafka は、人気の分散データ ストリーム プ...

ウェブサイト構築会社は企業にどのようなメリットをもたらすのでしょうか?

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

webcare360 - バルクメールサーバー/1Gbps帯域幅、苦情防止、著作権なし

webcare360 は、バルクメール サーバーを提供しています。サーバー ルームはポーランドのポモ...

APPが店頭から撤去されるも、小紅書は「大惨事を乗り越える」

販売中止となった小紅書は、コンテンツコンプライアンスの問題が発生している。小紅書は棚から撤去されまし...

2020 年のクラウド コンピューティング技術のトレンドの展望

年末が近づくにつれ、業界の調査組織は来年の技術動向を予測し、過去数年間の開発動向に関する予測と洞察を...

知っておくべき百度の人工語

百度の人工語なので、百度の検索エンジンに固有のものであるはずで、人工とは一部のキーワードの順位が人工...