3 Tips to Improve Cloud Performance
Many businesses have moved to cloud solutions. They envisage cost savings, improvements in service levels, and an increased ability to incorporate new technologies into an existing infrastructure. Cloud Solutions can be used in-house within the current equipment or in an outsourced hosted environment.
However, cloud environment technology is different from a non-cloud solution, and some attention needs to be paid to performance issues. Just moving to a cloud infrastructure in the exiting environment might not give the results you hope for.
Operational management needs to continually monitor performance to identify bottlenecks.
Storage issues can be addressed by adding more storage, processor workloads can be eased by adding more cores/CPUs or adding more memory to eliminate paging.
But before we get into specifics, poor cloud performance is not just about throwing money at new hardware. Often poor performance is software related. Applications might not be optimized for the cloud environment and might not be appropriately deployed.
Cloud service providers often release new deployment models, usually aimed at easing deployment and optimizing performance. They can also take advantage of new technologies such as Software Defined Networks or Content Delivery Networks. It may not be convenient to redeploy, but it may be the only way in extreme circumstances.
Before assuming that poor performance is due to hardware insufficiency, consider your network architecture and applications and how they are implemented.
There are several cloud optimization tools and services available to help you optimize performance. Use them. If you are using a hosted service provider, they will have specialized services that will help.
There are three main areas to look at:
The first step in improving Cloud Solutions is to look at applications software. If they are poorly designed or coded, or badly implemented, making small improvements in code and design can make a world of difference — tune and redesign as required.
The second area to check is database structures and operation. If a database is poorly implemented, that can have a significant impact on database performance. Tune the database and, in particular, check index utilization. You also need to check any caching that goes with the database.
As we said above, a redeployment may cure some problems.
The core of any cloud solution is the servers hosting the applications and managing the network linking the cloud to the users. Improving server performance can be achieved in several ways:
- Increase memory. Back in the day, Bill Gates said 512K RAM would be enough, but we all know how wrong he was. Some applications perform much better with enough RAM. It reduces the need for disk activity by paging inactive programs in and out of memory. More systems and user applications can co-exist in memory, again increasing performance by reducing disk activity.
- Use SD disks rather than HD Disks. An SSD is very similar to a flash drive. It uses the same instantly accessible physical memory chips, and because it has no moving parts and does not need to wait for a platter to rotate, it is a lot faster in operation. In raw speed terms, SSD drives can be as much as 10 times the HDD speed, but that depends on the SSD and the connection type.
- Optimize Cloud Storage. This can also significantly improve disk performance. You will probably be collecting large volumes of data from multiple sources. Ensure that the data is stored, perhaps in a triage system, to ensure the most frequently used data is on the fastest storage and held optimally.
It’s all very well to up server performance. If the problem lies in the network, upping server performance will have only a marginal effect.
- Routing. Make sure that your inter-cloud and intra-cloud pathways are optimal. You can do this by looking at latency.
- Bandwidth. You might be safe assuming that cloud bandwidth can support workload needs, but some particular operational activities might cause it to be exceeded.
- Users. From time to time, users might kick-off processes that use excessive bandwidth or processing power. Check to see if they can be rescheduled as off-line batch processes at quieter times.
- Distributed clouds. Fog cloud environments are becoming more popular, particularly in manufacturing environments. There are two issues here. The first is the bandwidth dedicated to the user interface, and the second is the bandwidth and routing between the edge and the core.
- WANOP Systems. Suppliers are producing WAN operating systems optimized to support cloud-based applications. They use virtual services that can optimize traffic flow and bandwidth assignments. They are often built-in seamlessly to Software Defined and Intent Based Networks.
In some cases, they can also manage distributed data traffic and load balancing.
On the face of it, manging Cloud Performance should not be much different from that of a traditional networked environment. Some areas of potential improvement are outlined above, but managing performance is a continuing activity.