画像は、DevOpsプロジェクト、OCIファンクション、OCIキュー、ロギング、通知およびIAMを含むOCIリージョンを示しています。
DevOpsプロジェクトには、OCIコード・リポジトリ、デプロイメント・パイプライン、ビルド・パイプライン、アーティファクト・リポジトリ/コンテナ・レジストリ、Container Engine for Kubernetesおよびキューfn-automationアプリケーションが含まれます。
- 開発者は、OCIコード・リポジトリのアプリケーション・コードを更新し、ビルド・パイプラインを実行します。
- ビルド・パイプラインの実行時に、最新のアプリケーション・バージョンを持つコンテナ・イメージがOracle Container Image Registry (OCIR)にプッシュされ、デプロイメント・パイプラインがトリガーされます。
- デプロイメント・パイプラインの実行時に、アーティファクト・レジストリのKubernetesマニフェストを使用して、アプリケーションをOracle Container Engine for Kubernetes (OKE)にデプロイします。
- アプリケーションは、構成済キューを定期的にポーリングして新しいメッセージをフェッチし、フェッチ済メッセージを使用して構成済ファンクションを起動し、正常に実行すると、キューからメッセージを削除します。
get_message
リクエスト率を上げることで、キュー内のメッセージのスパイクに応答します。
OCIキューとOCIファンクションの統合フロー:
- プロデューサはメッセージをOCIキューにプッシュします。
- queue-fn-automationアプリケーション:
- OCIキューからメッセージを取得します。
- OCIファンクションから本文にメッセージを含むファンクションを呼び出します。
- OCIファンクションから起動レスポンス・コードを取得します。
- 正常に処理されたメッセージをOCIキューから削除します。