- Spring 5.0 Microservices(Second Edition)
- Rajesh R V
- 304字
- 2021-07-02 19:44:56
Twelve-Factor Apps
Cloud computing is one of the most rapidly evolving technologies. It promises many benefits, such as cost advantage, speed, agility, flexibility, and elasticity. There are many cloud providers offering different services. They are lowering the cost models to make it more attractive to the enterprises. Different cloud providers, such as AWS, Microsoft, Rackspace, IBM, Google, and so on, use different tools, technologies, and services. On the other hand, enterprises are aware of this evolving battlefield and, therefore, they are looking for options for de-risking from lockdown to a single vendor.
Many organizations do a lift and shift of their applications to cloud. In such cases, the applications may not realize all benefits promised by the cloud platforms. Some applications need to undergo an overhaul, whereas some may need minor tweaking before moving to the cloud. This is, by and large, depends upon how the application is architectured and developed.
For example, if the application has its production database server URLs hardcoded as a part of the applications war, this needs to be modified before moving the application to cloud. In the cloud, the infrastructure is transparent to the application and, especially, the physical IP addresses cannot be assumed.
How do we ensure that an application, or even microservices, can run seamlessly across multiple cloud providers and take advantages of cloud services such as elasticity?
It is important to follow certain principles while developing cloud-native applications.
Cloud native is a term used to develop applications that can work efficiently in a cloud environment, and understand and utilize cloud behaviors, such as elasticity, utilization-based charging, fail aware, and so on.
Twelve-Factor App, forwarded by Heroku, is a methodology describing characteristics expected from a modern cloud-ready application. These twelve factors are equally applicable for microservices as well. Hence, it is important to understand the Twelve-Factors.