Enterprise Caching in a Mobile Environment IBM Redbooks Solution Guide

Similar documents
Implementing IBM CICS JSON Web Services for Mobile Applications IBM Redbooks Solution Guide

Continuous Availability with the IBM DB2 purescale Feature IBM Redbooks Solution Guide

Elastic Caching with IBM WebSphere extreme Scale IBM Redbooks Solution Guide

IBM z/os Management Facility V2R1 Solution Guide IBM Redbooks Solution Guide

Implementing IBM Easy Tier with IBM Real-time Compression IBM Redbooks Solution Guide

ServeRAID-MR10i SAS/SATA Controller IBM System x at-a-glance guide

Optimizing Data Integration Solutions by Customizing the IBM InfoSphere Information Server Deployment Architecture IBM Redbooks Solution Guide

Using the IBM DS8870 in an OpenStack Cloud Environment IBM Redbooks Solution Guide

Tivoli Storage Manager for Virtual Environments: Data Protection for VMware Solution Design Considerations IBM Redbooks Solution Guide

Emulex 8Gb Fibre Channel Single-port and Dual-port HBAs for IBM System x IBM System x at-a-glance guide

Best practices. Starting and stopping IBM Platform Symphony Developer Edition on a two-host Microsoft Windows cluster. IBM Platform Symphony

From Development to Production with the IBM WebSphere Application Server Liberty Profile IBM Redbooks Solution Guide

Integrated Management Module (IMM) Support on IBM System x and BladeCenter Servers

ServeRAID-BR10il SAS/SATA Controller v2 for IBM System x IBM System x at-a-glance guide

IBM PowerKVM available with the Linux only scale-out servers IBM Redbooks Solution Guide

IBM 6 Gb Performance Optimized HBA IBM Redbooks Product Guide

Designing a Reference Architecture for Virtualized Environments Using IBM System Storage N series IBM Redbooks Solution Guide

IBM High IOPS SSD PCIe Adapters IBM System x at-a-glance guide

Getting Started with InfoSphere Streams Quick Start Edition (VMware)

Best practices. Reducing concurrent SIM connection requests to SSM for Windows IBM Platform Symphony

Platform LSF Version 9 Release 1.1. Migrating on Windows SC

Utility Capacity on Demand: What Utility CoD Is and How to Use It

Best practices. Linux system tuning for heavilyloaded. IBM Platform Symphony

Version 9 Release 0. IBM i2 Analyst's Notebook Premium Configuration IBM

Platform LSF Version 9 Release 1.3. Migrating on Windows SC

2-Port 40 Gb InfiniBand Expansion Card (CFFh) for IBM BladeCenter IBM BladeCenter at-a-glance guide

Version 9 Release 0. IBM i2 Analyst's Notebook Configuration IBM

Optimizing Database Administration with IBM DB2 Autonomics for z/os IBM Redbooks Solution Guide

IBM. IBM i2 Enterprise Insight Analysis Understanding the Deployment Patterns. Version 2 Release 1 BA

IBM Worklight V5.0.6 Getting Started

Managing IBM Db2 Analytics Accelerator by using IBM Data Server Manager 1

IBM Operational Decision Manager Version 8 Release 5. Configuring Operational Decision Manager on Java SE

Build integration overview: Rational Team Concert and IBM UrbanCode Deploy

Version 2 Release 1. IBM i2 Enterprise Insight Analysis Understanding the Deployment Patterns IBM BA

IBM Flex System FC port 8Gb FC Adapter IBM Redbooks Product Guide

IBM Operational Decision Manager. Version Sample deployment for Operational Decision Manager for z/os artifact migration

IBM BigInsights Security Implementation: Part 1 Introduction to Security Architecture

IBM Maximo for Aviation MRO Version 7 Release 6. Installation Guide IBM

Netcool/Impact Version Release Notes GI

IBM Maximo for Service Providers Version 7 Release 6. Installation Guide

SAS Connectivity Card (CIOv) for IBM BladeCenter IBM Redbooks Product Guide

Integrated use of IBM WebSphere Adapter for Siebel and SAP with WPS Relationship Service. Quick Start Scenarios

N2225 and N2226 SAS/SATA HBAs for IBM System x IBM Redbooks Product Guide

Tivoli Access Manager for Enterprise Single Sign-On

IBM 1U Switched and Monitored Power Distribution Units IBM System x at-a-glance guide

Using application properties in IBM Cúram Social Program Management JUnit tests

CONFIGURING SSO FOR FILENET P8 DOCUMENTS

Migrating Classifications with Migration Manager

IMS and VSAM replication using GDPS IBM Redbooks Solution Guide

IMM and IMM2 Support on IBM System x and BladeCenter Servers

ServeRAID M1015 SAS/SATA Controller for System x IBM System x at-a-glance guide

IBM WebSphere Sample Adapter for Enterprise Information System Simulator Deployment and Testing on WPS 7.0. Quick Start Scenarios

IBM emessage Version 8.x and higher. Account Startup Overview

IBM. Networking INETD. IBM i. Version 7.2

IBM Spectrum LSF Process Manager Version 10 Release 1. Release Notes IBM GI

ios 9 support in IBM MobileFirst Platform Foundation IBM

Contents. Configuring AD SSO for Platform Symphony API Page 2 of 8

Application and Database Protection in a VMware vsphere Environment

IBM Maximo Calibration Version 7 Release 5. Installation Guide

IBM Kenexa LCMS Premier on Cloud. Release Notes. Version 9.3

IBM Content Analytics with Enterprise Search Version 3.0. Expanding queries and influencing how documents are ranked in the results

Flexible, High-Performing, Security-Rich, and Scalable Connectivity with CICS Transaction Gateway Products IBM Redbooks Solution Guide

Reliability and Performance with IBM DB2 Analytics Accelerator Version 4.1 IBM Redbooks Solution Guide

ServeRAID M5025 SAS/SATA Controller for IBM System x IBM System x at-a-glance guide

IBM License Metric Tool Enablement Guide

Redpaper. IBM Tivoli Access Manager for e-business: Junctions and Links. Overview. URLs, links, and junctions. Axel Buecker Ori Pomerantz

IBM Cognos Dynamic Query Analyzer Version Installation and Configuration Guide IBM

IBM Ethernet Switch J48E

Tivoli Access Manager for Enterprise Single Sign-On

IBM Rational Synergy DCM-GUI

iscsi Configuration Manager Version 2.0

IBM Operations Analytics - Log Analysis: Network Manager Insight Pack Version 1 Release 4.1 GI IBM

Patch Management for Solaris

Broadcom NetXtreme 10 GbE SFP+ Network Adapter Family for System x IBM Redbooks Product Guide

Achieving Higher Levels of Productivity with IBM ISPF Productivity Tool for z/os IBM Redbooks Solution Guide

Emulex 10GbE Virtual Fabric Adapter II for IBM BladeCenter IBM Redbooks Product Guide

IBM LoadLeveler Version 5 Release 1. Documentation Update: IBM LoadLeveler Version 5 Release 1 IBM

Deploying a Grid Solution with IBM InfoSphere Information Server IBM Redbooks Solution Guide

Broadcom NetXtreme Gigabit Ethernet Adapters IBM Redbooks Product Guide

Installing Watson Content Analytics 3.5 Fix Pack 1 on WebSphere Application Server Network Deployment 8.5.5

IBM Flex System FC5024D 4-port 16Gb FC Adapter IBM Redbooks Product Guide

IBM Storage Driver for OpenStack Version Release Notes

IBM Maximo Spatial Asset Management Version 7 Release 6. Installation Guide IBM

Broadcom NetXtreme II Dual Port 10GBase-T Adapter for IBM System x IBM System x at-a-glance guide

IBM Copy Services Manager Version 6 Release 1. Release Notes August 2016 IBM

IBM Cloud Orchestrator. Content Pack for IBM Endpoint Manager for Software Distribution IBM

A Quick Look at IBM SmartCloud Monitoring. Author: Larry McWilliams, IBM Tivoli Integration of Competency Document Version 1, Update:

Version 2 Release 1. IBM i2 Enterprise Insight Analysis Maintaining a deployment IBM

IBM Security QRadar Version Customizing the Right-Click Menu Technical Note

Migrating on UNIX and Linux

Release Notes. IBM Tivoli Identity Manager Rational ClearQuest Adapter for TDI 7.0. Version First Edition (January 15, 2011)

IBM. IBM i2 Analyze Windows Upgrade Guide. Version 4 Release 1 SC

IBM Watson Explorer Content Analytics Version Upgrading to Version IBM

Development of Advanced Applications with IBM WebSphere Application Server Liberty Profile IBM Redbooks Solution Guide

IBM Half-High LTO Generation 5 SAS Tape Drive IBM System x at-a-glance guide

IBM Endpoint Manager Version 9.1. Patch Management for Ubuntu User's Guide

IBM i2 ibridge 8 for Oracle

Tivoli Access Manager for Enterprise Single Sign-On

Best practices. Defining your own EGO service to add High Availability capability for your existing applications. IBM Platform Symphony

IBM Platform HPC V3.2:

Transcription:

Enterprise Caching in a Mobile Environment IBM Redbooks Solution Guide In the current global enterprise business environment, with the millions of applications running across Apple ios, Android, Windows Phone, and other platforms, mobile marketing brings more business opportunities for value added services but also brings more challenges to existing systems. Data is being accessed at a rapidly increasing rate to service mobile applications and the workload is becoming a burden to back-end servers. This guide shows how you can use IBM WebSphere extreme Scale or the WebSphere DataPower XC10 Appliance to cache frequently used data, thereby improving the performance of mobile applications and reducing the traffic to back-end applications. Figure 1. Mobile applications benefit from caching data Did you know? By the end of 2012, there were over 1 billion smart phones in use worldwide. In the next three years, that number is expected to reach 2 billion. Business value Similar to traditional applications, mobile applications need to cache large amounts of data in memory, which can affect performance. Yet the requirements for better performance, high availability, and linear scalability are critical to mobile services. Improving the user experience is the key issue faced by mobile businesses. IBM Worklight is part of the IBM Mobile Foundation family and provides an open, comprehensive, and advanced mobile application platform. WebSphere extreme Scale is one of the caching infrastructures for the WebSphere family of products that has the ability to use distributed object caching to manage application data and business logic for multiple servers. By integrating these elastic cache capabilities of WebSphere extreme Scale with IBM Worklight, you can accelerate mobile businesses and provide a better experience for the user. Enterprise Caching in a Mobile Environment 1

Solution overview Mobile applications are often unique among application types. With mobile applications, extremely high and unpredictable workloads can occur because the applications can be accessed at any time and from anywhere. There can be multiple, frequent peak times. Consider also that the data that is exchanged is small in size, but frequently requested. In this type of scenario, back-end systems can become a bottleneck when the workload is heavy. Caching can relieve the pressure on the back-end system. In this solution, a mobile application caches data that is retrieved from back-end applications in order to respond to subsequent requests for the same data. This increases response time to the user and decreases the number of requests to the back-end server. WebSphere extreme Scale servers and Worklight servers utilize WebSphere Application Server V8.5 Liberty profile servers. The Liberty profile is a composable and lightweight runtime application server; WebSphere extreme Scale features can be enabled quickly and easily using the Liberty profile. Without complex configuration and with only minimal code changes, mobile applications can benefit from the WebSphere extreme Scale cache seamlessly. This solution uses the WebSphere extreme Scale client to access remote WebSphere extreme Scale grids that are then invoked by the Worklight HTTP adapter. As such, this solution focuses on using the WebSphere extreme Scale as a side cache. Solution architecture An overview of the solution architecture is shown in Figure 2. Enterprise Caching in a Mobile Environment 2

Figure 2: Solution architecture This solution includes the following products: WebSphere Application Server V8.5 and the Liberty profile WebSphere extreme Scale or DataPower XC10 IBM Worklight IBM Worklight Studio Building the cache The cache is implemented by defining a WebSphere extreme Scale grid that spans multiple Liberty profile servers. One set of servers runs the WebSphere extreme Scale catalog and the other set runs the grid containers. The container servers hold the application data stored in the cache. A catalog server provides administrative services to the container servers in its domain. The catalog server manages the placement of the data in the cache and keeps track of where the data is. When a request is made for data from the cache, the catalog server directs the requester to the proper location. Multiple catalog servers are used for failover purposes. Each Liberty profile server is configured using simple XML and property files that define the features that your applications will use, including the WebSphere extreme Scale server feature and the location of the catalog servers. The WebSphere extreme Scale cache on these servers is also configured using simple XML files. When the Liberty profile servers are started, the WebSphere extreme Scale configuration files are detected and the caching grid is made available for use by applications. Enterprise Caching in a Mobile Environment 3

Figure 3 shows a sample topology, with three catalog servers and four grid containers. Use one Worklight server as shown, or you can scale out to use a Worklight cluster for your production system. Figure 3: Components of a Worklight application Building the IBM Worklight server on a Liberty profile server Beginning with V5.0, Worklight server ships with a Liberty profile, making implementation simple. The Liberty profile server is configured with an XML file that includes information about the Worklight server application and the Worklight application center. The XML file also enables the WebSphere extreme Scale client feature, giving applications on the server access to the cache. When the server is started, you can access the Worklight console shown in Figure 4. Enterprise Caching in a Mobile Environment 4

Figure 4: Worklight console You can perform the following tasks on the Worklight console: Deploy a Worklight application Deploy a Worklight adapter Preview and test your Worklight server-side application with a browser Using the cache from mobile applications IBM Worklight provides Worklight Studio, an Eclipse-based IDE that supports the development of native, web, or hybrid applications for ios, Android, Windows Mobile, and BlackBerry. Applications can be created that use JavaScript, Ajax, HTML5, and CSS. Worklight Studio contains an embedded Worklight server for development. To develop a mobile application with Worklight Studio: 1. Create a Worklight project and develop your mobile application. Typically, the logic is implemented in the JavaScript code and is common for all mobile platforms. Calls to the cache are coded into the application. Enterprise Caching in a Mobile Environment 5

2. Generate the artifacts for a specific device. 3. Build and deploy your application for testing, selecting a target device (for example, an iphone). 4. Run and test your mobile application with a simulator. A typical Worklight application topology looks similar to that shown in Figure 5 and includes a 3-tier architecture with a client, a Worklight Server, and a back-end system, which might be a database, a service bus, and so on. Figure 5: Worklight application topology In this solution, the client communicates with the Worklight server through the HTTP protocol. The Worklight server uses JDBC to communicate with a back-end database. For the client side, web technologies are used to develop the Worklight client application. It is deployed on the consumer device (such as a smartphone or tablet). Worklight provides a JavaScript framework to facilitate the development. Most client logic is implemented in JavaScript, which also allows the generation of unique native assets for various mobile platforms, such as ios, BlackBerry, Windows Mobile, and Android. Developers can also take advantage of native device capabilities, such as camera, GPS, accelerometer, and so on. On the server side, Worklight provides an interface to handle the incoming HTTP requests. If the application needs to talk with a back-end system, you can use a Worklight adapter. The adapters can also call server-side Java code; this solution uses this capability. Usage scenarios Consider a simple mobile application called Company Address Book (CAB). From the main screen, the user can search a company address book. Each search result is a list of records that satisfies the search criteria. The user can then drill down into a person s data, including a photo of the person. The application obtains all of this data from the company s back-end database. Search results are cached. For example, many people can search for sales reps in the organization or for the CEO. Caching the results of these searches eliminates the need to query the database again for corresponding requests. The CAB application includes generic code that is common to all platforms and specific code for ios and Android. The application also contains a server-side adapter for connectivity and a search adapter. All Enterprise Caching in a Mobile Environment 6

requests from a device go to the search adapter, which parses requests and is invoked by other adapters on behalf of the user. To use caching, a customization class is created so that every request for data passes from the search adapter through the class. The class checks the cache for the requested data, and, if found, the data is returned from the cache. Otherwise, the class invokes another adapter to retrieve the data from the database, stores it in the cache, and returns the data to the search adapter. Then the data is sent back to the client device. This customization class works either for WebSphere extreme Scale or DataPower XC10. All configuration data is stored in Worklight configuration files and the cache server addresses can be changed dynamically without recompiling the code. The data flow is shown in Figure 6. Figure 6: Application workflow with WebSphere extreme Scale caching Integration An alternative to using WebSphere extreme Scale server running on a Liberty profile, is the use of the DataPower XC10 as a cache. Among other features, the XC10 can be used as a simple data grid. In this solution, you would simply define the cache on the XC10 and when you configure your Worklight server for the WebSphere extreme Scale features, you would point to the XC10 catalog and cache. Enterprise Caching in a Mobile Environment 7

Supported platforms IBM WebSphere extreme Scale is supported on AIX, HP, Linux, Linux on System z, Solaris, Windows, z/os and z/os.e. Details about platform support can be found at http://www-01.ibm.com/software/webservers/appserv/extremescale/sysreqs/index.html. IBM Worklight Server is supported on AIX, HP, Linux, Solaris, and Windows. IBM Worklight Studio is supported on Linux, Mac OS, and Windows. Details about platform support for both IBM Worklight and Worklight Studio can be found at http://www-01.ibm.com/support/docview.wss?uid=swg27024838. Ordering information Ordering information is shown in the following table. Table 1. Part numbers and ordering information Program name PID number Ordering information WebSphere extreme Scale V8.6 (available only via IBM Passport Advantage ) 5724-X67 http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?htm lfid=897/enus212-370&infotype=an&subtype=ca&app name=wwwsearch#h2-ordinfx WebSphere extreme Scale V8.6 for z/os (available only via Passport Advantage) 5655-VX8 http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?info type=an&subtype=ca&appname=gpateam&supplier=89 7&letternum=ENUS212-367#h2-ordinfx WebSphere Application Server V8.5 (available only via Passport Advantage) WebSphere Application Server V8.5 Network Deployment (available only via Passport Advantage) WebSphere Application Server for z/os V8.5 5724-J08 http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?info type=an&subtype=ca&htmlfid=897/enus212-109&app name=usn#h2-ordinfx 5724-H88 http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?info type=an&subtype=ca&htmlfid=897/enus212-109&app name=usn#h2-ordinfx 5655-W65 http://www-01.ibm.com/common/ssi/showdoc.wss?docurl=/ common/ssi/rep_ca/6/897/enus212-106/index.html&lang=en &request_locale=en#h2-ordinfx IBM WebSphere DataPower XC10 Appliance V2.1 Machine type: 7199 Model: 92X http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?htm lfid=897/enus112-075&infotype=an&subtype=ca&app name=wwwsearch#h2-prodnox IBM Mobile Foundation Enterprise Edition V5.0.5 (available only via Passport Advantage) 5725-I41 http://www-01.ibm.com/common/ssi/showdoc.wss?doc URL=/common/ssi/rep_ca/8/897/ENUS212-368/index.ht ml&lang=en&request_locale=en#h2-ordinfx IBM Worklight V5.0.5 5725-I43 http://www-01.ibm.com/common/ssi/showdoc.wss?doc URL=/common/ssi/rep_ca/8/897/ENUS212-368/index.ht ml&lang=en&request_locale=en#h2-ordinfx Enterprise Caching in a Mobile Environment 8

Related information For more information, see the following documents: IBM Redbooks: Enterprise Caching Solutions using WebSphere DataPower SOA Appliances and WebSphere extreme Scale, SG24-8043 http://www.redbooks.ibm.com/abstracts/sg248043.html WebSphere extreme Scale V8.6 Sales Manual http://www-01.ibm.com/common/ssi/showdoc.wss?docurl=/common/ssi/rep_sm/7/897/enus5724- X67/index.html&lang=en&request_locale=en WebSphere extreme Scale home page http://www-01.ibm.com/software/webservers/appserv/extremescale/ WebSphere DataPower XC10 Appliance Sales Manual http://www-01.ibm.com/common/ssi/showdoc.wss?docurl=/common/ssi/rep_sm/3/897/enus9235- _h03/index.html&lang=en&request_locale=en WebSphere DataPower XC10 Appliance home page http://www-01.ibm.com/software/webservers/appserv/xc10/ IBM Worklight home page http://www-01.ibm.com/software/mobile-solutions/worklight/ IBM Mobile Foundation home page http://www-01.ibm.com/software/mobile-solutions/ Enterprise Caching in a Mobile Environment 9

Notices This information was developed for products and services offered in the U.S.A. IBM may not offer the products, services, or features discussed in this document in other countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-ibm product, program, or service. IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to: IBM Director of Licensing, IBM Corporation, North Castle Drive, Armonk, NY 10504-1785 U.S.A. The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law : INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you. This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice. Any references in this information to non-ibm Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product and use of those Web sites is at your own risk.ibm may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you. Information concerning non-ibm products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-ibm products. Questions on the capabilities of non-ibm products should be addressed to the suppliers of those products. This information contains examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental. Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurement may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment. COPYRIGHT LICENSE: This information contains sample application programs in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. Copyright International Business Machines Corporation 2012. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Enterprise Caching in a Mobile Environment 10

This document was created or updated on December 27, 2012. Send us your comments in one of the following ways: Use the online Contact us review form found at: ibm.com/redbooks Send your comments in an e-mail to: redbook@us.ibm.com Mail your comments to: IBM Corporation, International Technical Support Organization Dept. HYTD Mail Station P099 2455 South Road Poughkeepsie, NY 12601-5400 U.S.A. This document is available online at http://www.ibm.com/redbooks/abstracts/tips0953.html. Trademarks IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. These and other IBM trademarked terms are marked on their first occurrence in this information with the appropriate symbol ( or ), indicating US registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at www.ibm.com/legal/copytrade.shtml The following terms are trademarks of the International Business Machines Corporation in the United States, other countries, or both: AIX DataPower IBM Passport Advantage Redbooks (logo) System z WebSphere z/os The following terms are trademarks of other companies: Linux is a trademark of Linus Torvalds in the United States, other countries, or both. Windows, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Java, and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or its affiliates. Other company, product, or service names may be trademarks or service marks of others. Enterprise Caching in a Mobile Environment 11