Best Practices for Building Cloud-based Applications : Page 2
Choosing a cloud platform, or building an application that you plan to deploy in the cloud? Here are a few best practices to make the process easier.
by Debu Panda
Mar 22, 2011
Page 2 of 2
Best Practices for Building Cloud Apps
Here are a few best practices that you can use while choosing a platform or building an application that you plan to deploy in the cloud.
Do not jump on the cloud bandwagon without doing proper research. Check whether the application you want to build makes sense for deploying in the cloud. Use public cloud for consumer-facing applications, whereas private cloud is well-suited for large internal/enterprise applications that require integration with lot of local data and applications.
Security and privacy are big concerns for many applications, and these may mandate that your applications cannot be deployed in a cloud environment. Ensure that the cloud platform you plan to use addresses these security concerns before building and deploying the application.
Performance and scalability are also concerns for applications that may be available globally. Ensure that your cloud provider has the capability to deliver those applications all across the globe.
Building cloud-based applications is different from building applications on-premise. Some applications may not be suitable for the cloud. Design your application for performance and scalability, and build it so that it can benefit from the cloud's elastic computing nature. Typically, a stateless application can scale better by adding server instances.
Use a standard for building applications and plan to use IaaS. This will enable you to change between cloud providers or between private and public cloud.
There is no standard for PaaS-based applications, so choose your platform based on your enterprise needs. Use a platform that provides a standard API for building applications and avoid lock-in to retain the option to move to another platform if required.
Explore alternative persistence technologies for database persistence if your application requires dynamic search, scalability and storing of both structured and unstructured data.
If you are planning to build a private cloud, use cloud management software instead of reinventing the wheel to manage your cloud platform.
Cloud computing is changing the way applications are built and deployed. In this article, I provided an introduction to cloud computing and provided some insights on different cloud platforms.
Debu Panda is the CTO and co-founder of Bhim Corporation, a technology
company providing solutions on cloud computing and middleware platforms. He is the lead coauthor of the bestselling "EJB 3 In Action". He has authored more than 35 articles on enterprise Java and SOA technologies.