Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Strategizing Continuous Delivery in the Cloud

You're reading from   Strategizing Continuous Delivery in the Cloud Implement continuous delivery using modern cloud-native technology

Arrow left icon
Product type Paperback
Published in Aug 2023
Publisher Packt
ISBN-13 9781837637539
Length 208 pages
Edition 1st Edition
Arrow right icon
Authors (2):
Arrow left icon
Garima Bajpai Garima Bajpai
Author Profile Icon Garima Bajpai
Garima Bajpai
Thomas Schuetz Thomas Schuetz
Author Profile Icon Thomas Schuetz
Thomas Schuetz
Arrow right icon
View More author details
Toc

Table of Contents (18) Chapters Close

Preface 1. Part 1: Foundation and Preparation for Continuous Delivery in the Cloud
2. Chapter 1: Planning for Continuous Delivery in the Cloud FREE CHAPTER 3. Chapter 2: Understanding Cloud Delivery Models 4. Chapter 3: Creating a Successful Strategy and Preparing for Continuous Delivery 5. Chapter 4: Setting Up and Scaling Continuous Delivery in the Cloud 6. Part 2: Implementing Continuous Delivery
7. Chapter 5: Finding Your Technical Strategy Toward Continuous Delivery in the Cloud 8. Chapter 6: Achieving Successful Implementation with Supporting Technology 9. Chapter 7: Aiming for Velocity and Reducing Delivery Risks 10. Chapter 8: Security in Continuous Delivery and Testing Your Deployment 11. Part 3: Best Practices and the Way Ahead
12. Chapter 9: Best Practices and References 13. Chapter 10: Future Trends of Continuous Delivery 14. Chapter 11: Contributing to the Open Source Ecosystem 15. Chapter 12: Practical Assignments 16. Index 17. Other Books You May Enjoy

Progressive delivery

Many issues could come up with continuously deploying to production. Even if the software is tested well during the previous phases and our deployment mechanisms are working perfectly, we can encounter situations where everything is running from a technical perspective and still the experience for the end users is very dissatisfying. For instance, a customer might click on a button on a website, and it takes about 30 seconds to get a response, although there is not much load on the system. Such things could come up because the software is not tested under the conditions present in the production environment, and the things users are executing have not been tested in this constellation before. Long story short, we should always aim to deploy our software often and automatically, but we need additional mechanisms that safeguard our deployment process. One of them is progressive delivery.

“Progressive delivery is the process of pushing changes to a product iteratively, first to a small audience and then to increasingly larger audiences to maintain quality control.”

(Orit Golowinski, https://www.devopsinstitute.com/progressive-delivery-7-methods/)

Using progressive delivery, the software is deployed in a phased way, ensuring that not all users are affected by a problem. In Chapter 6, we will take a closer look at Blue-Green Deployments and Canary Releases, which can be used to not only create preview environments but also to shift production traffic between different versions of a product. At this point, we are able to deploy automatically after a new feature has been introduced and might be able to deliver it to a small user base to see how it performs. As we aim for automation and might not want to make such decisions manually, modern progressive delivery controllers are able to make such decisions based on data. For instance, a new software version gets automatically deployed to 1 of 5 production environments. We want to ensure that requests do not take longer than 500 milliseconds, and in the newer release, the response time must not be more than 10% higher than before. Therefore, we monitor such parameters and configure our progressive delivery controller to wait for some time and shift the next 20% of traffic if our conditions are met.

Progressive delivery is not only used to limit the blast radius of errors but also to validate user acceptance of newly implemented features. Using observability data, we could also find out whether there is a decrease in orders in various timeframes when a new feature is rolled out and can automatically roll back the feature in this case.

We will dive deeper into the various deployment strategies, as well as observability and feature flagging, in Chapter 6 and Chapter 7.

You have been reading a chapter from
Strategizing Continuous Delivery in the Cloud
Published in: Aug 2023
Publisher: Packt
ISBN-13: 9781837637539
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image