When to use cloud-native apps


Cloud-native apps are architecturally different to more traditional software engineering approaches. Because cloud-native is such a broad category, you can easily create an architecture to serve most needs, such as speed to market, integration of new technologies like machine learning, and rapid adaptation to customer feedback.

Modernizing existing apps

Cloud-native apps aren’t only for new projects. While a retrofit application may never be 'truly native to the cloud,' many existing applications would benefit from cloud-native thinking—allowing individual features to be released without a redeployment of the entire system, while still increasing reliability.

It’s often cost-effective to cloud-optimize an existing application, as you can take better advantage of fine-grained scalability and improved system resiliency. Many cloud services provide administrative functionality suitable for cloud architects and developers, because it lowers the need for specialist management.

For example, Azure Database for PostgreSQL has built-in database administrative functionality that is like DBA, by managing the underlying operating system and database for you.

Gradual adoption of a cloud-native approach

Partially modernizing an app doesn't necessarily mean a full migration and rearchitecture. Existing applications can evolve toward a cloud-native approach by moving existing architecture to a more modular, service-based architecture and using API-based communication. You can extend and evolve existing applications by adding new services based on cloud-native paradigms.

It usually makes sense to adopt these technologies and approaches incrementally, depending on priorities and user needs.

When not to use cloud-native apps

A Cloud Native App might not be a good fit if you already have an existing application that doesn’t provide enough value to invest in modernization. Also, if you have an application with predictable resource demands, an existing data center and existing management infrastructure may do fine.

However, even in these cases, you may still want to consider a hybrid approach—where your on-premises applications can work with your other, cloud-based applications and services.

Using cloud-native apps in industry

Cloud-native processes use automation, such as CI/CD pipelines, allowing developers to focus on developing code instead of the deployment overheads that many traditional systems involve.

Many companies with cloud-native architectures have thousands of independent services deploying hundreds, if not thousands, of times per day. They can instantaneously update small areas of a live, complex application, and individually scale those areas as needed.