You have an application running on Cloud Run that receives a large volume of traffic. You need to deploy a new version of the application. You want your deployment process to minimize the risk of downtime while following Google-recommended practices. What should you do?
A. Use Cloud Run emulator to test changes locally before deploying the new version of the application to the production Cloud Run service.
B. Use Cloud Build to create a pipeline, and configure a test stage before the deployment stage. When all tests pass, deploy the application to Cloud Run, and direct 100% of users to this new version of the application. Roll back if any issues are detected.
C. Use Cloud Load Balancing to route a percentage of production traffic to a separate Cloud Run service running the new version of the application. If performance meets expectations, gradually increase the percentage of users until the new Cloud Run service reaches 100%.
D. Use traffic splitting to have a small percentage of users test out new features on the new revision of the application on the production Cloud Run service. If performance meets expectations, gradually increase the percentage of users until it reaches 100%.