Difference between revisions of "Deployment patterns"
Jump to navigation
Jump to search
m (Text replacement - "Category:Continuous Deployment" to "Category:Continuous Delivery") |
m (minor rewording) |
||
Line 1: | Line 1: | ||
− | == Classical deployment pattern == | + | ==Classical deployment pattern== |
[[File:Classic-deployment-pattern.png|600px|right|Dev -> Test -> Staging -> Production]] | [[File:Classic-deployment-pattern.png|600px|right|Dev -> Test -> Staging -> Production]] | ||
− | In a classical development and deployment environment, (monolithic) software moves in stages between environments culminating in a | + | In a classical development and deployment environment, (monolithic) software moves in stages between environments culminating in a release like a dump truck delivering a load of dirt. If you're delivering software this way, it's a complete misnomer to call this a feature release. Instead, it is a new "version", with a whole bunch of new features, bug-fixes and changes bundled together. |
[[File:Dump truck in Acre, Brazil (cropped).jpg||600px|right|Dump truck in Acre, Brazil]] | [[File:Dump truck in Acre, Brazil (cropped).jpg||600px|right|Dump truck in Acre, Brazil]] | ||
− | == Modern deployment patterns == | + | ==Modern deployment patterns== |
− | In a Continuous Delivery environment, where testing is encouraged in | + | In a Continuous Delivery environment, where testing is encouraged in Production, changes are not delivered in a "big bang" or by the truck-load. It's possible to deploy features without exposing them to all users and to deploy them as discreet enhancements. |
− | + | Modern deployment patterns in a Continuous Delivery environment include: | |
− | * Blue-green deployments | + | * Blue-green deployments |
− | * Canary releases | + | * Canary releases |
− | * Dark launching | + | * Dark launching |
− | * A/B testing | + | * A/B testing |
− | * Progressive exposure or ring-based deployment | + | * Progressive exposure or ring-based deployment |
− | * Feature toggles | + | * Feature toggles |
[[Category:Continuous Delivery]] | [[Category:Continuous Delivery]] |
Latest revision as of 11:15, 31 January 2024
Classical deployment pattern[edit | edit source]
In a classical development and deployment environment, (monolithic) software moves in stages between environments culminating in a release like a dump truck delivering a load of dirt. If you're delivering software this way, it's a complete misnomer to call this a feature release. Instead, it is a new "version", with a whole bunch of new features, bug-fixes and changes bundled together.
Modern deployment patterns[edit | edit source]
In a Continuous Delivery environment, where testing is encouraged in Production, changes are not delivered in a "big bang" or by the truck-load. It's possible to deploy features without exposing them to all users and to deploy them as discreet enhancements.
Modern deployment patterns in a Continuous Delivery environment include:
- Blue-green deployments
- Canary releases
- Dark launching
- A/B testing
- Progressive exposure or ring-based deployment
- Feature toggles