Professional Cloud Developer
新しいアプリケーションコードを本番環境に昇格させる前に、さまざまなユーザーを対象としたテストを実施したいと考えています。この計画にはリスクが伴いますが、アプリケーションの新バージョンを本番ユーザーでテストし、オペレーティングシステムに基づいてどのユーザーを新バージョンに転送するかを制御したいと考えています。新バージョンでバグが発見された場合は、新しくデプロイされたバージョンをできるだけ早くロールバックしたいと考えています。 どうすべきでしょうか?
あなたのチームは、給与計算アプリケーションをサポートする自動音声応答 (IVR) システムのビジネスロジックを実装するためのバックエンドアプリケーションを作成しています。このIVRシステムには、以下の技術的特性があります。 • 各顧客からの電話は、一意のIVRセッションに関連付けられます。 • IVRシステムは、セッションごとにバックエンドへの個別の永続的なgRPC接続を作成します。 • 接続が中断された場合、IVRシステムは新しい接続を確立し、その通話にわずかな遅延が発生します。 あなたは、バックエンドアプリケーションをデプロイするために使用すべきコンピューティング環境を決定する必要があります。現在の通話データを使用して、以下の点を判断しました。 • 通話時間は1分から30分の範囲です。 • 通話は通常、営業時間内に行われます。 • 特定の既知の日付 (例: 給料日) や、大規模な給与変更が発生した場合に、通話の著しい急増があります。 あなたは、コスト、労力、および運用オーバーヘッドを最小限に抑えたいと考えています。バックエンドアプリケーションはどこにデプロイすべきですか?
あなたは、MySQLリレーショナルデータベーススキーマを使用するアプリケーションをGoogle Cloud上で開発しています。このアプリケーションは、データベースへの大量の読み書きが発生し、バックアップと継続的な容量計画が必要です。あなたのチームにはデータベースを完全に管理する時間はありませんが、小さな管理タスクは担当できます。データベースはどのようにホストすべきですか?
あなたはCloud Runを使用して新しいWebアプリケーションを開発しており、コードをCloud Source Repositoriesにコミットしています。新しいコードを可能な限り最も効率的な方法でデプロイしたいと考えています。コンテナをビルドし、`gcloud run deploy`コマンドを実行するCloud BuildのYAMLファイルは既に作成済みです。次に何をすべきですか?
あなたは大規模な組織の開発者です。WebアプリケーションをGoogle Kubernetes Engine (GKE) にデプロイしています。DevOpsチームは、Cloud Deployを使用してアプリケーションをGKEのDev、Test、ProdクラスタにデプロイするCI/CDパイプラインを構築しました。Cloud DeployがアプリケーションをDevクラスタに正常にデプロイした後、自動的にTestクラスタにプロモートしたいと考えています。Googleが推奨するベストプラクティスに従って、このプロセスをどのように構成すべきですか?