Once considered a big risk that only few companies dare to take, migrating applications to the cloud has become a very viable alternative to hosting applications in-house.
Architecture – Not all apps can be brought to the cloud. Some apps depend on systems that are not available in the cloud or don’t work in the cloud. Apps that rely on standard or commonly used technologies such as Windows, common Linux distros for MySQL Server, OS, Mongo DB for data, ASP.Net, Java, Ruby on Rails, or PHP are ideal for the cloud.
Network needs – Applications that need high bandwidth or extremely low latency connections to your systems are not good candidates for moving to the cloud. Reduce your problems by picking a cloud provider that can provide high bandwidth and low latency delivery to your users and one that can maintains this network for you. Remember, the more you can keep data transfer within the application and now between the application and the screen, the more appropriate that application is for the cloud.
Scaling – Apps are able to scale or need to scale are ideal for running in the cloud. That’s because the cloud is really great at providing users with resources on-demand.
Storage – Applications with storage needs are typically suited for the cloud.
Usage – Apps that will be used by people outside you company are good candidates for the cloud. This is because moving to the cloud separate the network needs of these apps from your own network and you obtain a complete separation of your internal network and applications.
Your business model – Take into account that most cloud providers charge based on resources you use such as: storage, number of servers online for a certain time period, bandwidth and other factors such as RAM per virtual machine. If your business is not able to earn money from your users or customers to match you cloud cost, you’ll lose money. Beware of contracts that include perpetual licenses when you are paying for cloud resources in a monthly basis.