著者| Li Peng(Yuan Yi)
出典|サーバーレス公式アカウント
1.イベント駆動型フレームワーク:Knative Eventing
イベント駆動型とは、継続的なトランザクション管理のプロセスで意思決定を行うための戦略を指します。進行中の問題を解決するために利用可能なリソースを動員することにより、関連するタスクを実行できます。素人の用語では、ユーザーが使用行動をトリガーしたときのユーザーの行動への応答です。サーバーレスシナリオでは、イベント駆動型は、元の設計意図の1つであるオンデマンドでの支払いに完全に適合します。
1.ネイティブモデル
図:ネイティブモデル
Knativeには、主に2つの部分が含まれます。1つはバージョン管理、グレーフロー、自動柔軟性などのワークロードの処理であり、もう1つはイベント(イベント駆動型フレームワーク)です。
-
コアプレーヤー
- グーグル;
- IBM;
- Pivotal;
- RedHat;
- SAP。
- 友達関連商品
- Google CloudRun;
- IBM;
- Pivotal Function Service(PFC);
- OpenShift。
2.イベント駆動型フレームワーク:イベント
Knative's Eventingは、さまざまな外部システムからのイベントへのアクセスを容易にする完全なイベントモデルを提供します。イベントが接続された後、クラウドイベント標準を介して内部的に転送され、イベントはBroker-Triggerモデルと組み合わせて処理されます。
上の図からわかるように、総合馬術には3つの部分があります。
- イベントソース
- Broker-Trigger:イベント駆動型モデル。このモデルは16年前半のバージョンで登場し始めました。原則として、Triggerはブローカー情報とフィルターをサブスクライブし、最終的にイベントを対応するサービスに送信して消費します。
- メッセージシステム:総合馬術では、各ブローカーはイベントのフロー全体を運ぶメッセージシステムに対応します。現在、コミュニティでサポートされているメッセージングシステムには、Kafka、NATS、Rocket MQ、RabbitMQなどがあります。
3.主な機能:イベントルール
イベントルールの中核は、次の機能を含むBroker-Triggerモデルです。
- トリガーのフィルターの機能は、イベントのコンテンツをフィルター処理することです。
- イベント属性とデータのコンテンツのフィルタリングをサポートします。
- Common Expression Language(CEL)式フィルタリングをサポートします。
- SourceAndType(イベントソースタイプ)によるフィルタリングをサポートします。
2つのイベント駆動型エンジン-イベントソース
1.イベントソースの概要
Knativeコミュニティは、Kafka、Githubなどの豊富なイベントソースアクセスを提供し、MNS、RocketMQなどのメッセージングクラウド製品の一部のイベントへのアクセスもサポートします。
上の図に示すように、イベントソースにアクセスした後、Broker-Triggerモデルを介して対応するサービスを要求できます。これらのサービスには、ソースコードからの画像の構築、自動画像公開、AIオーディオおよびビデオ処理、タイミングタスクなどの特定のシナリオが含まれます。すべてのイベントは、そのようなイベントソースからプルされ、イベントフロープロセス全体でEventingに送信される必要があります。
-
イベントへのアクセス
- メッセージクラウド製品のイベントソースへのアクセス。
- MNSを介したより多くのクラウド製品へのアクセス。
-
イベント処理
- Knative Eventingは、イベントサブスクリプション、フィルタリング、およびルーティングメカニズムを内部的に実装します。
- イベントは、Knativeが管理するサーバーレスサービスを通じて最終的に消費されます。
- 典型的なケース
- AIオーディオおよびビデオ処理。
- コードを送信すると、イメージが自動的に作成されます。
2.RocketMQイベントソース
メッセージキューRocketMQバージョンは、ApacheRocketMQに基づいてAlibabaCloudによって構築された、低遅延、高同時実行性、高可用性、および信頼性の高い分散メッセージングミドルウェアです。
RocketMQバージョンのメッセージキューは、分散アプリケーションシステムに非同期デカップリング、ピークシェービングおよびバレーフィリング機能を提供するだけでなく、インターネットアプリケーションに必要な大量のメッセージ蓄積、高スループット、および信頼性の高い再試行の特性も備えています。
RocketMQSourceは、KnativeプラットフォームのRocketMQイベントソースです。RocketMQクラスターメッセージをクラウドイベントの形式でリアルタイムでKnativeプラットフォームに転送できます。これはApaheRocketMQとKnativeの間のコネクタです。
3.カフカイベントソース
メッセージキューKafkaバージョンは、ApacheKafkaに基づいてAlibabaCloudによって構築された高スループットと高スケーラビリティの分散メッセージキューサービスです。ログ収集、データ集約の監視、ストリーミングデータ処理、オンラインおよびオフライン分析などに広く使用されています。データエコシステムに不可欠な製品の中で、Alibaba Cloudは完全に管理されたサービスを提供し、ユーザーは運用と保守を展開する必要がなく、より専門的で、より信頼性が高く、より安全です。
3.AIイベント駆動型シナリオの実践
具体的なシナリオを例にとると、ライブ放送システムです。このシステムは、毎日多数のライブ放送訪問があります。ライブ放送の人気に応じて、訪問数はいつでも変化します。弾力性は変動し、不規則な増加。顧客の要求は、ビジネスが柔軟で変動し、メッセージの同時実行性が比較的高いことです。2つ目は、低遅延を必要とするインタラクティブなリアルタイム応答です。
メッセージ処理の弾力性のある変動、高い同時実行性、および低遅延の要件を満たすために、顧客は弾力性のあるデータ処理のためにAlibabaCloudのKnativeサービスを選択します。Alibaba Cloud Knativeは、ユーザーの現在のニーズを完全に満たし、K8s標準へのアクセスに基づくイベントとメッセージに基づく柔軟なスケジューリングを提供します。
アプリケーションインスタンスの数がビジネスの山と谷で拡大および縮小すると、オンデマンドでリアルタイムの柔軟性を使用する機能が真に実現されます。プロセス全体が完全に自動化されているため、ビジネス開発者のインフラストラクチャへの負担が軽減されます。この場合、Knativeは主に、非常に高い柔軟性、イベント処理、およびすぐに使用できる3つの機能を提供します。
以下はデモンストレーションの例です。デモンストレーションの主な内容は次のとおりです。
- Kafkaイベントソースをデプロイする
- イベントゲートウェイをデプロイする
- 展開サービス
- イベント処理をシミュレートする
デモンストレーションプロセスのリンクを表示します。https://developer.aliyun.com/live/246128
著者について:
Li Peng、花の名前:Alibaba Cloud ContainerPlatformのシニア開発エンジニアであるYuanYiは、2016年にAlibabaに入社し、Alibabaの包括的なコンテナ化に深く関わり、長年にわたってダブル11コンテナ化リンクをサポートしています。コンテナ、Kubernetes、サービスメッシュ、サーバーレスなどのクラウドネイティブフィールドに焦点を当て、新世代のサーバーレスプラットフォームの構築に取り組んでいます。現在、Alibaba Cloud Container ServiceKnative関連の作業を担当しています。