Cloud and Container Basics

A service that receives 12,000 requests per hour performs a canary release of a new version, sending only 5% of the requests to it. The new version has a bug that makes 3% of the requests it receives fail; it is noticed after one hour, and all requests are returned to the old version. Which of the following is the number of requests that failed because of the bug during that hour?

  1. A18
  2. B360
  3. C600
Show answer and explanation

Answer: A. 18

The new version received 12,000 × 5% = 600 requests, and 3% of them failed, so 600 × 3% = 18 requests failed. Had all requests been switched to the new version at once, 12,000 × 3% = 360 would have failed. A canary release limits the requests affected by a bug to a small share in this way and increases the share if there is no problem, while watching indicators such as error rate and response time. Comparing the indicators of the new and old versions needs enough requests, so the share and the observation time are decided together.

  • A. Correct. 12,000 × 0.05 × 0.03 = 18.
  • B. This is the number if all requests had been sent to the new version (12,000 × 0.03).
  • C. This is the number of requests sent to the new version (12,000 × 0.05); only 3% of them failed.
Practice this topic Back to topic

Books on Cloud and Container Basics Ad

As an Amazon Associate I earn from qualifying purchases.

More Cloud and Container Basics questions

  1. A container image built by a CI/CD pipeline was tested in the staging environment and passed. Which of the following is the most appropriate way to release this image to production?
  2. As shown above, the database connection target is not written into the image but passed as an environment variable when the container starts. Which of the following is the most appropriate main advantage of this design?
  3. In a system in which several services work together, you want to find out which services a single user request passed through, in what order, and how much time it spent in each. Among the data used for observability, which of the following is the most suitable?
  4. Among the Linux kernel features that make containers possible, which of the following correctly pairs namespaces and cgroups (control groups) with their roles?
  5. On a Linux host, Docker is used to start a container from an image based on a different distribution from the host, and uname -r (which shows the kernel release) and cat /etc/os-release (which shows information about the distribution) are run inside it. Which of the following correctly describes the results?