Upload
dobao
View
257
Download
2
Embed Size (px)
Citation preview
IBM WebSphere eXtreme Scale & XC10: An introduction to Elastic Caching
Seema KumarWebSphere Product Management
2
Agenda• What is Elastic Cache?• WebSphere eXtreme Scale v7.1• WebSphere DataPower XC10 Appliance• Common Usage Patterns
3
4
Very powerful cache
�Scales from simple in-process topologies to powerful distributed topologies.
Platform for building powerful XTP/Data Grid applications
Form of in-memory data grid
�Manage application state
�Scales to 1000’s of servers
�Sometimes referred to as Distributed Application State Management.
A flexible framework for realizing high performance, scalable and data-intensive
applicationsNew York San Francisco
London Shanghai
3 Use Cases
What is Elastic Cache?
5
Modern Application Infrastructure Topology
Web Server Tier Back-end SystemsDatabase Tier
App Server Tier Elastic Data Grid
IBM HTTP ServerWebSphere
Application ServerDB2 UDB
DataPower XC10 for simple data oriented scenarios:• HTTP Session Replication• Elastic Dynacache• Web Side Cache
eXtreme Scale for maximum flexibility covering data and application oriented scenarios
1
2
6
When do I need an Elastic Grid?
7Redundant copies of data at different versions
Traditional Cache Operation
■ Cache capacity determined by individual JVM Size.■ Size of each cache = M■ # JVMs = N■ Total cache = M
■ Invalidation load per server increases as cluster grows.
■ Cold start servers hit the database. AApplication
AApplication
AApplication
AApplication Invalidation Chatter
Database
ApplicationInvalidation load
increases with cluster size
New Serverwith cold cache
High load onDatabase
8
Application E
D’
WebSphere eXtreme Scale Cache Operation
■ Cache capacity determined by total cluster size■ Size of each cache = M■ # JVMs = N■ Total Cache = M x N
■ No invalidation chatter
■ Linearly scalable
■ Less load on database and no cold start spikes
Application D C’
Application C B’
Application B A’
Application A
Cache4x Larger
Cache5x Larger
E’
9
Innovative Elastic Caching Solutions“Data Oriented”
“Application Oriented”
Session management
Elastic DynaCache
Web side cache
Event Processing
In-memory OLTP
Worldwide cache
Petabyte analytics
Data buffer
In-memory SOA
eXtreme Scale
DataPower XC10 Appliance
• Ultimate flexibility across a broad range of caching scenarios
• In-memory capabilities for application oriented scenarios
• Drop-in cache solution optimized and hardened for data oriented scenarios
• High density, low footprint improves datacenter efficiency
Elastic caching for linear scalabilityHigh availability data replication
Simplified management, monitoring and administration
10
10
IBM WebSphere eXtreme Scale• Proven mature product:
– Fourth major release of product with V7.1 in 2010– Used at some of the largest web sites in the world
• Lightweight runtime footprint (15MB jar)
• Integrates with all versions of WebSphere Application Server and almost any Java-based application container or Java Virtual Machine
• Only requires JavaTM SE run-time environment
– Exploits WAS-ND environment when available
• Meets the needs of a variety of application environments:
– Java SE, Java EE (WAS, WebLogic, Tomcat…), as well as for .Net applications via REST APIs*
• Proven multi-data center capabilities
• Proven low-latency access to data
11
11
IBM WebSphere DataPower XC10 Appliance V2
• Scale out with ease– Large, 240GB elastic cache allows you to
scale more economically while providing high Quality of Service
– Scales elastically without application downtime– Linear, predictable scaling at predictable cost
• Easy drop in use for common scenarios
– Support for data-oriented caching scenarios without rip & replace
– Unbinds cache from application server memory constraints
• Fault tolerance– Lower risk of data loss while providing
continuous availability
• Flexible and simple user management
– Simple solution for real world management and monitoring
12
Easy drop-in use for common scenarios
• Simple Cache
• HTTP Session Cache
• WAS Dynamic Cache Service (“Dynacache”) support
Little or no code changes required!
13
Fault Tolerance
• Create an appliance “collective”for high availability
• Lowers risk of data loss through automatic replication of data
• Continuous Availability!
• Self Healing - Failures are automatically detected
• Easy to configure
14
14
Common Elastic Caching Scenarios
HTTP Session ReplicationSide CacheData Access LayerData Grid
15
15
HTTP Session Replication
• Many enterprise applications today require HTTP session persistence.
• A grid of JVMs can be established with the sole purpose of storing HTTP session (or any java) objects.
• Isolating the application runtime from grid runtime, thereby, freeing up the JVM heap for application use.
• Provide linear scalability to accommodate growth (in # of sessions or size of session objects).
• Providing replication and management of session objects within the grid.
• Can even store session objects across datacenters.
Session GridWeb App Layer
16
16 DataPower XC10 Overview
Common set of Patterns - HTTP Session data cache
• No new code required • Extension of legacy session management caching mechanism in WebSphere Application
Server• Extensions to WebSphere Application Server administrative console to support WebSphere
DataPower XC10 session management caching and WebSphere eXtreme Scale session management caching
• WebSphere Application Server connects seamlessly to the WebSphere DataPower XC10 appliance or WebSphere eXtreme Scale
– Client code must be installed on WebSphere Application Server systems
• Easily configure WebSphere applications to store HTTP session data to a data cache on the WebSphere DataPower XC10 appliance through the WebSphere Application Sever administrative console
• Replaces other session replication mechanisms (memory-to-memory replication)
• Removes the need for Database traditionally used for persistence
• Enables HTTP session failover between WebSphere Application Server cells
17
Active/Active Datacenter HTTP Session Failover
Web Server
PlantsByWebSphereCluster
memory to memoryreplication
Datacenter1
xPlantsByWebSphereCluster
Deployment Manager
PlantsByWebSphereCluster
memory to memoryreplication
Datacenter2
xPlantsByWebSphereCluster
Deployment Manager
WebSphere eXtreme Scale
OR
WebSphere eXtreme Scale
18
18
Side Cache
• Client first checks the grid before using the data access layer to connect to a back end data store.
• If an object is not returned from the grid (a cache “miss”), the client uses the data access layer as usual to retrieve the data.
• The result is put into the grid to enable faster access the next time.
• The back end remains the system of record, and usually only a small amount of the data is cached in the grid.
• An object is stored only once in the cache, even if multiple clients use it. Thus, more memory is available for caching, more data can be cached, which increases the cache hit rate.
• Improve performance and offload unnecessary workload on backend systems.
19
19 DataPower XC10 Overview
Elastic Caching used as a Side Cache
• Used to store data for fast, lower-cost access than a database• Uses ObjectMap APIs from WebSphere eXtreme Scale• Client can run in a standard Java EE compliant server environment or in
any Java Virtual Machine compliant with Java SE V1.4 or beyond• Dynamic Cache Service Provider for WebSphere Application Server (ND
6.1 / ND 7.0)– Page fragment cache– Web services cache– Command cache
• Support L2 Cache – Open JPA/Hibernate (WXS only)• Side Cache for Datapower XI50 thru REST Gateway (XC10 only)• Side Cache for WPS/WESB• Side Cache for Message Broker
20
Objects in the Elastic Data Grid – Key, Value pairsKey Value pair examples:
• integer key, string value• (hex) integer key, compound value• compound key, compound value
21
21
Data Access Layer – (WXS only)
• The grid can be used as a special data access layer where it is configured to use a loader to get data from the back-end system.
• The loader can be configured to asynchronously write back the changes to the back-end system
• Even when the back end is down, the application can write changes. They are buffered in the grid to be written back when the back-end system comes online again.
• Reduced dependency on back end data store
22
22
Client Usage: Online BankingRetail Banking
35xreducedresponsetimes
22 Milliononline banking users
Next-generation Online Banking– Before: 700ms to login with 2 backend calls
– After: 20ms to login with profile cache access
– $6M/yr cost savings in MIPs reduction
– 3 datacenters: If one datacenter goes down it fails over seamlessly to the others
– 8Gb of data transfer per hour between DC’s
$500kreducedcosts per month
20xreduction in “FCIs”
Provide seamless cache infrastructure across applications
Deliver high performance & consistent response times
Ensure high availability of critical online applications
23
23
Entertainment 10xreducedresponsetimes
7 Billionrequests per day
23
Support transaction-intensive services
Deliver consistent & predictable response times
Take action on growing volumes of business events
Scale with simplicity and lower cost
Fantasy Sports Web Infrastructure– Before: 60ms response time against
database– After: WXS improved to 6ms response
time – 450k concurrent users– 80k requests per second up to 1M in
2011– 6 weeks from concept to production
Client Usage: Worldwide Fantasy Sports Web Site
24
24
Resources
• Fully functional J2SE trial downloadhttp://www.ibm.com/developerworks/downloads/ws/wsdg/learn.html
• Wiki documentationhttp://www.ibm.com/developerworks/wikis/display/objectgrid/Getting+started
• User's Guide to WebSphere eXtreme Scale http://www.redbooks.ibm.com/abstracts/sg247683.html
• Data Sheetftp://public.dhe.ibm.com/common/ssi/pm/sp/n/wsd14088usen/WSD14088USEN.PDF
• XC10 Web Sitehttp://www-01.ibm.com/software/webservers/appserv/xc10/
• Getting Started Wiki for XC10http://www.ibm.com/developerworks/wikis/display/extremescale/2010/06/25/IBM+WebSphere+DataPower+XC10+appliance+now+available
http://www.ibm.com/developerworks/spaces/xtp
WebSphere Extreme Transaction Processing for Developers Space will discuss various topics for developing and deploying XTP applications and will point out emerging trends, benefits, challenges, and features associated with it.
http://www.youtube.com/user/ibmextremescale#p/a
Weekly video podcasts covering customers questions and forum posts on the IBM WebSphere eXtreme Scale product.
Additional resources
25
Questions?
26
Java is the registered trademark of Oracle Corp
27
27
28
Backup
29
Elastic Caching for WebSphere Portal