Welcome!

Cloud Expo Authors: Elizabeth White, Roger Strukhoff, Dana Gardner, Matt Hester, Pat Romanski

Related Topics: Cloud Expo, SOA & WOA, Virtualization, Security, Big Data Journal, SDN Journal

Cloud Expo: Blog Feed Post

Elastic Scaling of APIs in the Cloud

Here’s a quick set of practices we used to achieve our goal

As an Enterprise Architect for Intel IT, I worked with IT Engineering and our Software and Services group on the elastic scaling of the APIs that power the Intel AppUp® center. Our goal was to scale our APIs to at least 10x our baseline capacity (measured in transactions per second) by moving them to our private cloud, and ultimately to be able to connect to a public cloud provider for additional availability and scalability. Here’s a quick set of practices we used to achieve our goal:

  1. Virtualize everything.  This may seem obvious and is probably a no-op for new APIs, but in our case we were using a bare-metal installs at our gateway and database layers (the API servers themselves were already running as VMs). While our gateway hardware appliance had very good scalability, we knew we were ultimately targeting the public cloud and that our need for dynamic scaling could exceed our ability to add new physical servers.  Using a gateway that scales in pure software virtual machines without the need for special purpose-built hardware helped us achieve our goal here.
  2. Instrument everything.  We needed to be able to correlate leading indicators like transactions per second to system load at each layer so we could begin to identify bottlenecks. We also needed to characterize our workload for testing – understanding a real-world sequence of API methods and mix/ordering of reads and writes. This allowed us to create a viable set of load tests.
  3. Identify bottlenecks.  We used Apache jmeter to generate load and identify points where latency became an issue, correlating that against system loads to find out where we had reached saturation and needed to scale.
  4. Define a scaling unit. In our case, we were using dedicated DB instances rather than database-as-a-service, so we decided to scale all three layers together. We identified how many API servers would saturate the DB layer, and how many gateways we would need to manage the traffic. We then defined a collection of VMs that would provision all of these VMs together. We might have scaled each layer independently had our API been architected differently, or if we were building from scratch on database-as-a-service.

    Example collection for elastic scaling

  5. Repeat. The above let us scale from 1x to about 5x or 6x without any problem. However, when we hit 6x scaling we discovered that a new bottleneck: the overhead of replicating commits across the database instances. We went back to the drawing board and redesigned the back end for eventual consistency so we could reduce database load.
  6. Automate everything.  We use Nagios and Puppetto monitor and respond to health changes. A new scaling unit is provisioned when we hit predefined performance thresholds.

     

    Automation/Orchestration workflow

  7. Don’t forget to test scaling down.  If you set a threshold for removing capacity, it’s important to make sure that your workflow allows for a graceful shutdown and doesn’t impact calls that are in progress.

The above approach got us to 10x our initial capacity in a single data center. Because of some of our architecture decisions (coarse-grained scaling units and eventual consistency) we were then able to add a GLB and scale out to multiple data centers – first to another internal private cloud and then to a public cloud provider.

Read the original blog entry...

More Stories By Application Security

This blog references our expert posts on application and web services security.

Cloud Expo Breaking News
Cloud computing is transforming the way businesses think about and leverage technology. As a result, the general understanding of cloud computing has come a long way in a short time. However, there are still many misconceptions about what cloud computing is and what it can do for businesses that adopt this game-changing computing model. In this exclusive Q&A; with Cloud Expo Conference Chair Jeremy Geelan, Rex Wang, Vice President of Product Marketing at Oracle, discusses and dispels some of the ...
The 3rd International SDN Expo, co-located with 14th International Cloud Expo and 5th International Big Data Expo, to be held June 10-12, 2014, at the Javits Center in New York City, N.Y. announces that its Call for Papers is now open. Topics include all aspects of providing or using massively scalable IT-related capabilities as a service using Internet technologies. According to a recent report by Deloitte Consulting, firms using Software-Defined Networking (SDN) can save up to 50% on their ne...
There is little doubt that Big Data solutions will have an increasing role in the Enterprise IT mainstream over time. Get a jump on that rapidly evolving trend at Big Data Expo 2014 New York, co-located with 14th Cloud Expo – being held June 10 - 12, 2014, at the Javits Center in New York, NY. As advanced data storage, access and analytics technologies aimed at handling high-volume and/or fast moving data all move center stage, aided by the cloud computing boom, Big Data Expo is the single mos...
The move to the cloud brings a number of new security challenges, but the application remains your last line of defense. Developers are extremely well-poised to perform tasks critical for securing the application – provided that certain key obstacles are overcome. In his session at the 13th International Cloud Expo®, Wayne Ariola, Chief Strategy Officer at Parasoft, will explore three ways to help development bear the burden of security that the cloud places on them: Use penetration testing r...
For half a century, the trajectory of computing has followed a "faster, smaller, cheaper" arc. In his Day 3 Lunchtime Keynote at the 13th International Cloud Expo®, Tim Park, Director, Platform Strategy at Microsoft and alumnus of Nest Labs, will look at how that trajectory is both accelerating and changing course as computing begins to infuse many of the everyday items in our lives. He will walk through the hard problems you need to think about when deploying devices and services for the Intern...
A day in the life of the future. In his session at the 13th International Cloud Expo®, Lanlogic’s Joe Foos will show how your entire organization can: Achieve Seamless Communication – voice, video, email and messaging … without playing tag Enjoy Real Collaboration – meet, work, and share … anytime, anywhere Enable Unlimited Potential – your cloud will never run out of space, power, or capability See exactly how the California Strawberry Commission and thousands of other organizations global...
Nowadays, a large number of sensors and devices are connected to the Internet. Leading-edge M2M technologies integrate various types of sensor data to create a new value for several business decision scenarios. The transparent cloud is a model of a new M2M emergence integration service platform in which many service providers store and access various types of sensor data in order to create and find out new business values by integrating such data. In their session at the 13th International C...
Many organizations are realizing the benefits that come with moving data to the cloud, including faster implementation, elasticity and reduced costs. But the path to the cloud isn’t always smooth. Finding the right cloud service provider takes research, and data security is always a primary concern, especially for organizations that are regulated by privacy laws. In his session at the 13th International Cloud Expo®, Steve Pate, CTO & Co-Founder of HighCloud Security, will speak to the safest w...
New developments in cloud technologies have revolutionized the way organizations interact with their customers. Today it is all about consumer experience, consumer insights, consumer behavior, consumer journey. With rich media, the very focus of digital marketing and commerce has shifted from product-centric to consumer centric. Cloud computing has enabled the global access for consumers across the world – for the right person, at the right time, and the right content. The side effect of this ...
ProfitBricks, the infrastructure-as-a-service (IaaS) company that completely reengineered the delivery of Cloud Computing, is speaking, sponsoring and exhibiting at Cloud Expo Silicon Valley, the 13th International Cloud Expo conference. Pete Johnson, senior director of cloud platform evangelism at ProfitBricks, will discuss the evolution of cloud and the needed flexibility that Cloud Computing 2.0 offers. ProfitBricks – the IaaS price/performance leader who introduced Cloud Computing 2.0 – of...