When it comes to running applications in the cloud, performance is always a concern. After all, you want to make sure that the application will run just as well in the cloud as in your own data center.
In my experience, performance isn't nearly as big of a problem as perceived performance. The reason for this is that it is relatively easy to make sure that the application will run well in a cloud environment. Many cloud providers will allow customers to determine what hardware resources are allocated to applications. This means that the administrator has the ability to make sure that the application has access to hardware that performs just as well as (if not better than) the hardware that was being used in the local data center.
The issue of perceived performance comes into play with regard to connectivity to the application server. Imagine for a moment that an application server is running at peak performance in the cloud. That application server's performance quickly becomes somewhat irrelevant if the Internet connection to the cloud is slow, unreliable or saturated with excessive traffic. In these situations, the application server may appear to be slow and unresponsive even if it is running perfectly.
Service-level agreements (SLAs) can sometimes help with running applications in the cloud. You may be able to get your cloud service provider to guarantee that you will have access to a certain amount of Internet bandwidth. Likewise, you may be able to get an SLA that guarantees that certain hardware resources will be available for your application servers. However, this only partially solves the problem. You must make sure that your own organization has sufficient Internet bandwidth to be able to access the cloud-based resources in an efficient manner. For that, you will need to talk to your telecom provider.
Where the cloud fits in data protection
How to approach a cloud DR implementation
Considerations for picking a DRaaS provider