If you have a business that is contemplating moving some of your enterprise tasks to the cloud, whether just a portion of daily tasks or a more significant amount relative to your business, there are a number of factors you should consider as you make this decision. This usually starts with which cloud service to use, what type of cloud (public, private or hybrid) you should consider and what the best path is for migration.
There is however one other factor that many IT organizations do not take into consideration, but should, when planning a venture of this magnitude for their business organization. That factor is performance, and because it is often not a part of the overall considerations there are some big performance mistakes being made as these systems begin to migrate to the clouds.
Before you even consider moving your production to the cloud, you should be aware of three common cloud performance mistakes that every IT organization should plan to avoid during planning stages.
Code Porting Errors
For many, the primary error is to assume you can begin porting code without performing platform localization modifications. For example, the assumption that you can take C++ code from on-premise platforms and simply move that code without any problems whatsoever is flawed.
For most of us, it is a given that you would always need to localize and optimize any code before moving it from one platform to another. We tend to forget that when we move code to the cloud, the same rules apply. Even if the cloud model is Infrastructure as a service (IaaS) or Platform as a Service (PaaS), you still need to consider performance. Your cloud provider may indicate that they provide A-to-A portability, but that portability will not give you A-to-A performance characteristics unless you do your part of the heavy lifting.
Leaving Out I/O Tuning
For many organizations, the error is in not considering I/O tuning when migrating to the cloud. Keep in mind that you will need to optimize I/O subsystems and the best way to do this is by tweaking tunables. Realize that this is separate from elasticity — cloud platforms can always auto provision servers as you saturate the processors. In this instance, we are referring to access to the native I/O system and how to be sure you are accessing in the most efficient way possible.
Network Latency Issues
This is similar to the problems with I/O tuning. Because we cannot control the Internet when it comes to providing us with consistent performance, when looking at the overall performance model for the new cloud environment, latency has to be considered as a separate issue. This can be critical depending on your needs, so be sure to include this in your consideration of whether a move to the cloud makes sense for your operation.
However, it isn’t just latency within the net that has to be considered, you also will need to look at latency issues that can occur when systems communicate within the cloud. This is an issue that can be easily overlooked at the planning stages. Because it is tricky to monitor, issues can crop up at a later stage and cause difficulties since there is typically not access to physical systems. It is not an insurmountable problem however, and if taken up with your provider at the planning stages, they can usually work with you on this.
As you can see, these are all issues that can be avoided if considered during the planning stages of your organization’s system migration to the cloud.
Our newsletters and blogs are written to provide you with tools and information to meet your IT and cloud solution needs. We invite you to engage in our online community by following us on Twitter @GMOCloud and ‘Liking’ us on Facebook.