The Definitive Guide to Cloud Accelerationby Dan Sullivan
Cloud computing is an increasingly popular way to use computing and storage technologies, and it is changing the way businesses deliver services. As with any innovation, you have to adapt your methods and procedures to take full advantage of the new technology. This guide examines how cloud computing and the architecture of the Internet shape service delivery, the challenges presented to reaching a global customer base, and techniques for accelerating content delivery.
Chapter 1: Cloud Computing and Challenges to Delivering Services
Cloud computing is creating opportunities for businesses to expand their reach to a global scale. The cost and complexity of deploying computing and storage services is lowered with cloud computing. There is also greater flexibility to adapt to new business opportunities by leveraging IaaS and PaaS platforms to create new applications and services. The increasing adoption of SaaS platforms also presents an opportunity for businesses to offer their services in a SaaS model. Businesses must pay particular attention to Web application performance for all customers regardless of those customersâ€™ locations. Adding servers and storage will improve some but not all aspects of application responsiveness. As Chapter 1 explores, cloud acceleration techniques may be required to ensure consistent and acceptable levels of performance for all application users.
Chapter 2: How Websites and Web Applications Work
Maintaining consistent Web application performance for all users is a challenge. Various forms of caching can improve performance in some cases but some cases are better served by replicating content to servers closer to end users. Dynamic content requires other optimization techniques to improve overall TCP performance, reduce packet loss, and cut total RTT. The goal of this chapter is to explore aspects of Web application design and architecture that adversely affect performance, then examine methods for addressing those adverse effects.
Chapter 3: Why the Internet Can Be the Root Cause of Bottlenecks
Developers, software designers, and architects can spend a significant amount of time and effort tuning their applications and infrastructure and their networks can still suffer from performance problems. This reality does not necessarily mean these IT professionals are bad at what they do; it can mean that the problem lies outside their area of control. As this chapter explains, in spite of all the time and effort you might put into tuning your Web application, the Internet can become a bottleneck for your Web application performance.
Chapter 4: Multiple Data Centers and Content Delivery
Deploying applications to a global user base involves several technical as well as many potential legal issues. When you support a user base on multiple continents, you have all the requirements of a more localized user baseâ€”reliable access to the applicationâ€”as well as additional considerations, such as concerns about latency and the impact of network performance on application response time. Although content moves easily to any point on the Internet, local regulations and laws introduce a layer of complexity to the deployment of applications and services internationally. Content that is readily available in Western Europe or North America may be restricted in China, for example. As you consider how to optimize your application performance and content delivery for a global user base, keep in mind legal requirements as well. Ideally, you will be able to deploy an application and network solution that addresses both technical and legal requirements within an integrated service.
This chapter examines several topics related to data centers and content delivery: appeal of deploying multiple data centers, challenges to maintaining multiple data centers, data centers combined with content delivery networks, and country-specific issues to multiple data centers and content delivery, particularly in China.
Chapter 5: Architecture of Clouds and Content Delivery
This chapter focuses on the architecture of public cloud services and considers how public cloud providers meet some, but typically not all, enterprise requirements. The chapter considers this issue from three perspectives:
- Public cloud providers and virtualized IT infrastructure
- Application designers and their responsibility for application architecture
- Content delivery networks as complementary to public cloud provider services
Designing and deploying enterprise applications on a global scale requires attention to infrastructure, architecture, and network optimization. As this chapter highlights, public cloud providers are well positioned to address infrastructure and related service issues. Content delivery networks address the network optimization problem. Combining public cloud services with content delivery services in a well-designed application architecture can provide a solid foundation for building enterprise applications.
Chapter 6: How to Choose a Cloud Application Acceleration Vendor
Delivering applications to a global user base is challenging. You will face technical difficulties as well as cultural issues. Business needs are driving the adoption of cloud acceleration to improve the overall performance of applications. Technical considerations are best addressed with a combination of data centers, content delivery networks, and dynamic content acceleration techniques. This chapter outlines the multiple considerations to evaluate when assessing content delivery network providers. The importance of particular considerations will vary according to your specific business requirements. Considering the full range of technical, business, and cultural issues you face in delivering content to a global user base will help you evaluate your content delivery network and cloud application acceleration options.