Windows Azure AppFabric Caching Wade Wegner Windows Azure Technical Evangelist Microsoft Corporation Agenda Challenges in Building High Performance Web Apps Overview of Windows Azure AppFabric Caching Demos,

Download Report

Transcript Windows Azure AppFabric Caching Wade Wegner Windows Azure Technical Evangelist Microsoft Corporation Agenda Challenges in Building High Performance Web Apps Overview of Windows Azure AppFabric Caching Demos,

Windows Azure AppFabric Caching

Wade Wegner Windows Azure Technical Evangelist Microsoft Corporation

Agenda Challenges in Building High Performance Web Apps Overview of Windows Azure AppFabric Caching Demos, Demos & Demos Sizes & Capacity Best Practices Summary Q&A

Challenges

How do you linearly scale your application to handle increasing load?

How do you quickly get better performance and reduced data access latencies?

How do you store data mash-ups from multiple data repositories?

How do you easily & reliably manage ASP.NET session state and page output caching?

How do you reduce pressure from the data-tier without complex data partitioning techniques?

And most importantly, how do you do all this with a predictable cost model?

Solutions?

A highly scalable distributed caching solution with low latency and high throughput In-memory cache Located near your cloud applications Reduces pressure from data tier Simple administration No need to build, deploy, or manage your own distributed cache Provision what you need, pay for what you use Low overall TCO Simple integration with your cloud applications Out of box support for common application patterns (ASP.NET session state, output caching)

Commercial Launch of Windows Azure AppFabric Caching

ANNOUNCING

Overview of Windows Azure AppFabric Caching

DEMO

A quick recap…

A distributed, in-memory cache for applications running in Windows Azure: In-memory cache located near your Windows Azure applications Simple administration Based off the proven Windows Server AppFabric Caching capabilities Benefits: Highly scalable caching solution with low latency and high throughput Can dynamically increase and decrease as needed, without redeploying or modifying your application User doesn’t have to bother with configuration, deployment, or management of their cache infrastructure

Capabilities & Key Benefits

Differentiators Out of box ASP.NET providers for session state & page output caching Extreme low latency with the local cache Local cache enables you to use spare available memory in your Web tier while the Caching tier gives you a predictable distributed cache Caches any managed object (CLR objects, rows, XML, Binary Data…) Only requirement is that the object should be serializable No serialization costs for local caching Easily integrates into existing applications Same managed interfaces as Windows Server AppFabric Caching Secured by the Access Control Service

Application Patterns

Reference Data A version of the authoritative data, refreshed periodically Large number of accesses, mostly read Example –Product catalogs Activity-oriented Data Data generated as part of the app activity, typically logged back to a backend datastore Needs read, write access Example –Shopping cart, Session State Resource-oriented Data Authoritative data, modified by transactions, temporal in nature Needs frequent read, limited write access Example –Flight Inventory, Stock Quotes

Walkthrough of Common Caching Application Patterns

DEMO

Sizes & Capacity Planning

Available in multiple sizes 128 MB 256 MB 512 MB 1 GB 2 GB 4 GB Use combination of these sizes or multiple of these to create your desired cache capacity Increase/decrease cache capacity dynamically Data preserved when increasing cache size Data follows normal eviction policy on decreasing cache size

Pricing

128 MB cache 256 MB cache 512 MB cache 1 GB cache 2 GB cache 4 GB cache $45.00/month $55.00/month $75.00/month $110.00month

$180.00/month $325.00/month

Things to Consider

Dedicated memory Ease of use Distributed Service Level Agreement (SLA) AppFabric Caching Hosted Do-it-Yourself

With AppFabric caching, you are guaranteed the complete cache size at all times.

With a hosted caching solution, you can only use a part of the instance memory because part of the memory is consumed by the operating system and other running processes.

AppFabric caching handles of all the service details. All you have to do is use it.

With a hosted caching solution, you are responsible for installation and configuration in addition to ongoing management and maintenance.

Because AppFabric caching is distributed, it can scale with the demand of your applications. You just visit the portal and increase the memory size.

We promise uptime and availability of the service in our SLA.

With a hosted caching solution, your application scale is limited by the capacity of the compute instance hosting your cache. You must manually add and prepare additional instances.

With a hosted caching solution, you are not guaranteed any uptime.

Best Practices

Remember, Caching !=Database Use local cache to get the maximum benefit Local cache has time based expiry Local cache is usually more volatile (varying memory pressure) Consider using Caching along with CDN and Traffic Manager to decrease end user latency Caching can help overcome the sticky session state limitations (works for any shared state scenario) Do capacity planning to optimize for data in cache to avoid frequent data-tier accesses Always collocate your provisioned caches and your Azure application!

Summary

Build High Performance Web Applications quickly & easily with the help of Windows Azure AppFabric Caching Highly scalable caching solution with low latency & high throughput Simple administration Offered as a managed service to help reduce your overall TCO Dynamic provisioning lets you add/remove capacity as needed Roadmap Public CTP release available in AppFabric Labs since Oct ‘10 (PDC) Commercial launch in 2 weeks (April 2011) Get started For more information: http://www.microsoft.com/windowsazure/appfabric/ Start using today: https://portal.appfabriclabs.com/

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.