Why Elastic Compute Cloud (EC2) Is Prone to Performance Issues

AWS offers a service for hosting applications on servers, storage and other infrastructure with EC2. However, AWS only makes available a small sliver of information concerning the hardware that your applications are running on. As a result it’s nearly impossible to know what is “running under the hood” or which specific servers, storage drives and networking components are processing your data and powering your applications. The nature of such a service creates several distinct attributes listed below that differ from running IT hardware on-premise, and make certain issues more likely to occur. For More information about Amazon EC2

Opaqueness

Multi-Tenancy

Your application will be placed wherever AWS sees fit to place it.1 There’s no visible orchestration, optimization or even knowledge of what the other applications that are sharing the same hardware are doing.

If an application on the shared hardware begins to grow in utilization of a specific resource, this might take resources away from other applications on that infrastructure (oftentimes from other customers). Take your career to new heights of success with a AWS Online Training.

The Sheer Scale of AWS Tends to Mask Hardware Issues

AWS Guarantees Capacity, Not Performance

Minimal AWS Service Level Agreements (SLA) Coverage

Maintenance is Still Required

Administrators running applications on AWS must treat the cloud infrastructure with the same attentiveness as if it were their own on-premise hardware and follow any communications sent by AWS or risk being affected by maintenance activities.

AWS Performance Metrics have Gaps and Can be Confusing

Understanding metrics can be difficult as AWS does not always make clear what is being measured and how. Metrics are not normalized; some CloudWatch metrics are totaled over 5-minute intervals, while others over 1-minute intervals. Lastly, CloudWatch’s granularity does not get under 1 minute, placing a hard limit on catching metric changes that occur in 2 minutes or less.

Seeing Inside your AWS EC2 Instances

AWS Web Console

EC2 API Endpoints

AWS CloudWatch

For example, CloudWatch will report that 60% of an instance’s CPU was used, but you do not know what these cycles were used for. A maxed-out application, a runaway kernel or an application stuck in an infinite loop will look the same through CloudWatch.

CloudWatch has a default data collection period of 5 minutes with a paid upgrade to enable 1-minute data collection. Finer granularity is not available at the time of this writing. Any change that happens in less than 2 minutes will be missed; only slower trends will be visible through CloudWatch.

Top et al

Related Articles

AWS Tutorial

Daniel Bourke Schalavadi Matthieu McClintock Daniel O'Sullivan Chris Witko Jan Killian Thomas Wagner Brent Maxwell Chandrasekar Duraisamy Javier Cabrera AWS Startups AWS User Groups

AWS Developer