PROFESSIONAL-CLOUD-DEVOPS-ENGINEER · Question #126
You deploy a new release of an internal application during a weekend maintenance window when there is minimal user tragic. After the window ends, you learn that one of the new features isn't working…
The correct answer is B. Adopt the blue/green deployment strategy when releasing new code via a CD server. E. Configure a CI server. Add a suite of unit tests to your code and have your CI server run them on. To reduce Mean Time To Recovery (MTTR) for application releases, implement a blue/green deployment strategy and integrate automated unit tests via a CI server.
Question
Options
- ABefore merging new code, require 2 different peers to review the code changes.
- BAdopt the blue/green deployment strategy when releasing new code via a CD server.
- CIntegrate a code linting tool to validate coding standards before any code is accepted into the
- DRequire developers to run automated integration tests on their local development environments
- EConfigure a CI server. Add a suite of unit tests to your code and have your CI server run them on
How the community answered
(25 responses)- A12% (3)
- B76% (19)
- C4% (1)
- D8% (2)
Why each option
To reduce Mean Time To Recovery (MTTR) for application releases, implement a blue/green deployment strategy and integrate automated unit tests via a CI server.
Requiring peer reviews improves code quality and reduces defects, but it's a preventative measure that doesn't directly reduce recovery time once an issue is in production.
Adopting a blue/green deployment strategy allows for instant rollback to the previous stable version if issues arise in the new release, drastically reducing the time to restore service (MTTR) compared to a full rollback.
Integrating a code linting tool improves code style and identifies potential issues, but it's primarily a preventative measure for code quality and doesn't directly impact the time it takes to recover from a production incident.
While important, requiring developers to run integration tests locally is a manual step that depends on individual adherence and doesn't guarantee automated issue detection or faster recovery in production.
Configuring a CI server to run a comprehensive suite of unit tests automatically on every code change catches bugs early in the development cycle, preventing faulty code from reaching production and thus reducing the likelihood of outages that require recovery.
Concept tested: Release Strategies (Blue/Green) & CI/CD for MTTR
Source: https://cloud.google.com/solutions/architecture/blue-green-deployments; https://cloud.google.com/architecture/ci-cd-on-gcp
Topics
Community Discussion
No community discussion yet for this question.