Cloud Architecture Series #4 - Application Architecture Challenges

Cloud Architecture Series #4 - Application Architecture Challenges

In the previous post?Cloud Architecture Series #3 - Application Architecture Constraints?we briefly looked at some of the constraints while choosing an application architecture on cloud. Today let's have a look at some of the known challenges while choosing an architecture pattern.

As constraints or guidelines provide us with well known characteristics and sometimes limitations of an application pattern, it also creates some challenges or trade-offs. It is important to understand these before we adapt any application architecture pattern. Here are some of the challenges,

  • Does the complexity of the architecture pattern is justified for the application or the application domain? Will the delivery team able to handle the backlog of features? Will there be enough help to manage the dependencies?
  • How dependent components communicate with each other? Do we consider asynchronous communication to decouple services and increase reliability? How do we manage challenges in handling eventual consistency?
  • How do we manage scalability of services? Do we consider using cloud native services to address this challenge? Does it provide enough flexibility and assistance in both scale-up and scale-down events? Do we have enough information/capability to support scalability of home-grown or greenfield services?
  • Cloud application security is one of the most important part of application pattern. This needs to be thought about from the design phase as it can easily become one of the biggest challenge. We need to have well thought approach to ascertain & implement security of the application deployed on cloud.
  • It may not be something we want to have but we need to consider scenarios which can lead to potential downtime of our application on cloud. Necessary measures need to be thought about and implemented to have guaranteed uptime and high performance of your cloud applications. You may want to create separate guardrails for cloud services and own managed services.
  • The ability to monitor the application, obtain trace information in case of failure events and provide easy update/upgrades is a one of key features we need to have as part of our application deployment on cloud.


More updates to subscribe to the?Cloud Native Hero! Newsletter

LinkedIn?|?Twitter?|?GitHub?|?Blog?|?Medium

要查看或添加评论,请登录

Swapnil K.的更多文章

社区洞察

其他会员也浏览了