<<

Transaction Processing and Distributed Computing in the Internet Age

C. MOHAN IBM Fellow

mohan@almaden..com http://www.almaden.ibm.com/u/mohan/

IBM Almaden Research Center 650 Harry Road, K01/B1 San Jose, CA 95120 USA

4 March 2003 About the Speaker

Dr. C. Mohan joined the IBM Almaden Research Center as a Research Staff Member in 1981. In 1997, he was named an IBM Fellow for being recognized worldwide as a leading innovator in transaction management. He received the ACM SIGMOD Innovations Award in 1996 in recognition of his innovative contributions to the development and use of systems. At VLDB99, he was honored with the 10 Year Best Paper Award for the impact of his work on the ARIES family of algorithms. In late 2002, he was named an IEEE and an ACM Fellow. In 1992, he was elected to the IBM Academy of Technology. Mohan is a core member of IBM's WebSphere Platform Architecture Board. Currently, he is working on data caching and next generation messaging in the context of WebSphere and DB2. He was the founding leader of the Dominotes project which resulted in the enhancement of Domino/Notes's scalability by the introduction of transactional recovery in R5. Prior to that, Mohan led the Exotica project which was focussed on the workflow product FlowMark (now called MQSeries Workflow), the messaging product MQSeries and the groupware product Lotus Notes. Mohan was a designer/implementer of the R* distributed DBMS, the Starburst extensible DBMS and DB2. He is the primary inventor of the ARIES family of recovery and locking methods, and the Presumed Abort protocol. He has had major impact on numerous IBM and non- IBM prototypes and products. Mohan's research results and designs have been incorporated in the IBM products DB2, MQSeries, S/390 Parallel Sysplex Coupling Facility, ADSM (now called Tivoli Storage Manager), SQL/DS and VM Shared File System, in Microsoft's SQLServer, in the IBM prototypes R*, Starburst and QuickSilver, and in IBM's SNA LU6.2 and DRDA. Mohan is a consultant to IBM's database, transaction, messaging and workflow product groups.

Mohan is the recipient of several IBM awards: an IBM Corporate Award for his contributions to database support for the S/390 parallel sysplex; an IBM Outstanding Innovation Award (OIA) for his coinvention of the ARIES recovery method which is being used in numerous IBM and non-IBM products and prototypes; an OIA for his inventions (ARIES, ARIES/IM, Commit_LSN) and major contributions to performance, availability and concurrency in DB2/MVS V4; three OIAs for his algorithmic and hardware architectural coinventions for supporting the shared disks transaction environment in S/390 and DB2/MVS; an Outstanding Technical Achievement Award (OTAA) for enhancements to Lotus Domino to provide log-based recovery; an OIA for his coinvention of the Hybrid Join method which is implemented in DB2/MVS; an OIA for his coinvention of the Presumed Abort commit protocol which has been widely adopted in the industry and which is now part of the JTS, ISO-OSI, X/Open and DRDA distributed transaction processing standards; an IBM Research Division Award (RDA) for his work on transaction management in R*; an RDA for his contributions to WDSF/VM; 10th Plateau IBM Invention Achievement Award for his patent activities (30 issued and 3 pending). Mohan was named a leading software inventor of IBM for 1994 and 1995, and a Master Inventor in 1997.

Mohan was the Americas PC Chair for the 1996 International Conference on Very Large Data Bases, a PC Vice-Chair for the 1994 International Conference on Data Engineering (ICDE) and the PC Chair for the 1987 International Workshop on High Performance Transaction Systems. He is the Industrial PC Co-Chair for ICDE2003. He has been an Editor of the VLDB Journal, and Distributed and Parallel - An International Journal. Mohan received a PhD in from the University of Texas at Austin in 1981 and a BTech in chemical engineering from the Indian Institute of Technology, Madras in 1977. 16-Mar-03 TP & DC, C. Mohan 2 Overview

ƒ Introduction .NET XML ƒ Paradigm Shifts ƒ Internet and World Wide Web J2EE Web SOAP ƒ Information Integration Portals DB2 ƒ Transactional Messaging ƒ High Availability ACID Process Mgmt High Avail ƒ Business Process Integration ƒ Application Servers and TPTP Transaction Models ƒ Summary and Outlook High Perf

16-Mar-03 TP & DC, C. Mohan 3 Business Shifts

Business Technology ƒ Globalization ƒ Power of the Web ƒ Deregulation ƒ Pervasive computing ƒ Competition ƒ Information vs. data

Customers Markets ƒ More sophisticated ƒ Fragmented Complex transactions ƒ Mass customization ƒ More demanding Standards, Performance, 24X7 Cost of Ownership, Exploit fragmented capacity (Grid) 16-Mar-03 TP & DC, C. Mohan 4 Link Customers, Partners, Suppliers

p

u

o

r

G

n

e

e

d

r

e

b

A

:

e

c

16-Mar-03 TP & DC, C. Mohan r 5

u

o

S Customers' Needs

Environment: Shrinking resources, cost/competitive pressures

Q Reduced cost of ownership/development –Easier administration of complex systems (better perf monitoring/modeling tools, automatic load balancing, ease of SW installation/upgrades, ...) –Better SW development tools/methodologies (ease of use, price, SW reuse, ...)

Q More standardized interfaces to reduce monopoly, improve interoperability

Q Realistic, standard benchmarks

Q Higher data availability to VLDBs (24X7 operations, disaster recovery, ...)

Q More complex transactions with good response times, better price/performance

Q More flexible modes of access (e.g., intra/inter/extranets, mobility): leverage legacy data and app programs 16-Mar-03 TP & DC, C. Mohan 6 Integrated Enterprise

IT Requirements driven by Business Priorities Integrated from Demand-to-Delivery Moving towards realtime Business Models

Industry MaMannufufaac-c- Industry Fiinance DiDistristribbuutitioonn Retatailil Telecolecom Gov''tt.. Solutions tuturingring . . .

Customeromer EnterpriseEnterprise Product VaValuelue Relationship ResourResourcece Lifeecyclecycle Chain Management Planning Management Management Customerrss SuppliersSuppliers & Disttributoributorsrs

Software Infrastructure

EEmmplployoyeees

Business Integration (inter- & intra-enterprise)

16-Mar-03 TP & DC, C. Mohan 7 Enterprise Integration & Information Flow

Fin.Fin. Mfg.Mfg. Dist.Dist. RetailRetail Telco.Telco. GovGov’’t.t. ++++++

CRMCRM ERPERP PLMPLM SCMSCM

Suppliers & Customers e-business Infrastructure Distributors CollCollababorationoration BusinessBusiness Bus.Bus. IntelligenceIntelligence IntegrationIntegration Employees

CRM ERP SCM • Self-service information • Employee Information • Purchase Orders • Bills, statements • Invoices • Invoices • Loan applications • Job Applications... • Proof of Delivery... • e-mails, letters, fax e-COMMERCE • Phone conversations... • Product catalogs • Transaction records • Pictures, music, video, books.... 16-Mar-03 TP & DC, C. Mohan 8 On Demand Computing

Stages of e-business Adoption

Access Enterprise Integration On Demand Responsive

Variable Focused Resilient

Connect to the Buying, not browsing... Optimize operations... Internet... working, not surfing...

Access Publish Transact Integrate Internally Integrate Externally Adapt Dynamically

An on demand business is an enterprise whose business processes–integrated end-to-end across the company and with key partners, suppliers and customers–can respond with speed to any customer demand, market opportunity or external threat.

16-Mar-03 TP & DC, C. Mohan 9 Companies Face Changing Market Dynamics

Static On Demand

Business process decision-making Collaborative, integrated value nets

Rigid organizational structure Dynamic, adaptive, learning

Slow and steady economic growth Unpredictable fluctuations

Business Long-term product lifecycles Shortening product lifecycles

Passive operational risk management Proactive risk management; increased focus on privacy and security

Fixed costs Variable costs Proprietary systems Open, integrated systems

Labor-intensive Self-healing, self-managing systems

Technology Users adapt to technology Technology adapts to users

16-Mar-03 TP & DC, C. Mohan 10 Virtualization Technologies Today

CPU Upgrade Virtual Servers on demand (Linux VMware) Virtual Database (DB2 Federated) Virtual Storage (StorageTank)

Virtual File Systems (General Parallel File Virtual Mainframe System and Network File (Global Distributed Parallel System) Sysplex)

16-Mar-03 TP & DC, C. Mohan 11 Business Trends

ƒ Heavy competition in many sectors: mergers or failures of giants (airlines, banks, ...), globalization ƒ Massive IT outsourcing by non-computer firms ƒ Supply chain management for cost cutting ƒ Decision making with more up-to-date data ƒ Increased telecommuting and mobile computing ƒ Microsoft continues to target enterprise market ƒ IBM aims at the small and medium businesses ƒ Acquisitions of SW companies ƒ IBM buys CrossWorlds, PriceWaterhouse Business Consulting, Informix, Holosofx, Rational (pending) ƒ HP buys Compaq ƒ Microsoft buys Great Plains Software, Visio

16-Mar-03 TP & DC, C. Mohan 12 Evolution of Computing Models

ƒ Centralized computing (mainframes) with dumb terminals ƒ Mid range machines, sometimes in clusters (Vax, DG, S/38, …) ƒ Personal computers ƒ Thick clients and the hype of client-server computing: manageability problems, maintenance nightmares, … ƒ Birth of the internet, web and browser-based thin clients: performance problems, unpredictable response times, … ƒ Content distribution networks (Akamai, Digital Island, …) ƒ Edge/grid computing: Page assembly at the edge and of business logic at the edge

16-Mar-03 TP & DC, C. Mohan 13 Application Integration Evolution

Applications which interact with each other using Web standards 2000+ Web application standards = Web Services Late 1990s Web standards appear e.g., HTTP, HTML, XML, OBI, Rosetta Net, cXML Early 1990s Application integration standards appear e.g., EDI Pre-1990s Custom static apps integration

16-Mar-03 TP & DC, C. Mohan 14 Open Standards

Connectors Flow Web User Composition Interface

JCA Web Data & Vocabularies

BPEL4WS HTML XML

Dynamic Application Navigation, Discovery Web and Interaction J2EE Services (SOAP, WSDL, UDDI) Open Source Business Logic Open Reference Implementations

Trusted Internet Networking Services

Linux Windows AIX Solaris HP/UX OS/400 OS/390 zOS

16-Mar-03 TP & DC, C. Mohan 15 Evolution of the IBM Software Brands

Leading E-learning Integrated Business Platform for and Integrated Information Impact Infrastructure Advanced Management e-business Collaboration

Online Messaging Integrated Transaction Relational and Enterprise Systems Database E-mail Management

Linux Windows AIX Solaris HP-UX OS/400 z/OS

Scalable Platform independent Reliable Modular & Flexible Standards-based Globalized

16-Mar-03 TP & DC, C. Mohan 16 Tivoli Capabilities

Configurations & Operations Performance & Availabilty Efficiency through role-based Business success dependent on IT configuration availability Configure resource with Identify, notify and cure the right data and Business Impact infrastructure problems software to do the job Management Contract, measure and Schedule, automate and proactively manage end-user coordinate application service levels Configurations Performance execution and Operations and Availability

Core Services

Security Storage

Secuity Storage Align e-business and security Continuance through policy-based Manage user identities automation Centralize access control Backup & recovery of information Correlate infrastructure security Enable continuous operation and events recovery of application-dependent data Identify and manage storage resource utilization

16-Mar-03 TP & DC, C. Mohan 17 Evolution of Database Management Systems

ƒ File systems (tapes, direct access, …): VSAM ƒ Hierarchical databases (e.g., IMS, Adabas, …): integrated data of different applications ƒ Relational databases (Tables, SQL, …): physical and logical independence – still bound by schemas ƒ 2nd generation relational databases: move from data management to program/semantics management (triggers, stored procedures, referential constraints) ƒ Object relational databases: user-defined types, complex objects, extenders/datablades/cartridges ƒ Information integration: heterogeneous data sources and wrappers ƒ XML databases: freedom from requiring schemas and standard for data exchange 16-Mar-03 TP & DC, C. Mohan 18 Information Integration

Access, store, manage, analyze, integrate & distribute

Database Servers Enterprise Content Management OLTP & analytical applications Optimized resource managers for rich High performance & scalability content High availability, security Digital rights management Platform optimization Content-enabled applications

Business Intelligence Management Tools Embedded analytical capabilities Reduced administative costs Solution integration through automation & tools

Information Integration Heterogeneous, Federation, Search, Replication. XML integration

16-Mar-03 TP & DC, C. Mohan 19 Importance of Autonomic Computing

Value Proposition IBM's Activities

Increase agility Autonomic capabilities delivered as IBM SWG products Increase return on investment Reduce cost of administration IBM ^ function Increase resource utilization enhancements Faster deployment of new capabilities Storage management enhancements Ensure a safe environment

Worldwide Autonomic Improve business resiliency Computing Design Centers

IGS Services for Autonomic Computing

Open industry approach— Engaging with standards bodies like IETF, DMTF, GGF

16-Mar-03 TP & DC, C. Mohan 20 Traditional TP Monitors

Provide infrastructure for efficient execution of transactional applications (CICS, IMS TM, Tuxedo, TopEnd, ACMS, ...)

Typical Characteristics ƒ ACID transactions: atomic, durable transactions ƒ Very large databases (VLDBs) ƒ Scalable high performance: throughput, response time (<1 sec), ... ƒ Data communication: large client networks, synchronous and asynchronous messaging (app-app communication) ƒ Legacy data, applications, hardware ƒ Workload management, accounting, ... ƒ Industrial-strength software infrastructure (RAS, ...) ƒ Online, batch, query access to data

Example apps: finance (banking, brokerage), insurance, healthcare, telecom, reservations (hotel, car, air), inventory control, retail/distribution, HR, ...

16-Mar-03 TP & DC, C. Mohan 21 IBM's CICS Transaction Server

30 billion transactions/day (> WWW) $100B/week (~ Nasdaq) $1Trillion in 33 years apps (IDC) Used by 490 + of IBM's invested in top 500 customers applications

950,000 programmers earn 20,000 their living from CICS 30 million customers worldwide users 15 Million 3270 terminals waiting to be replaced 5000 packages from 2000 ISVs

5,000+ packages Up to 150,000 concurrent users/system on CICS from 2000 ISVs Up to 750,000 concurrent users/system on TPF

16-Mar-03 TP & DC, C. Mohan 22 A Sample Customer Environment

ESRI MapObjects Vignette Checkpoint Netscape LDAP Checkpoint Sun Solaris 2.6 Sun Solaris 2.6 Firewall 1.4 AIX 4.2.1 Firewall 1.4 Oracle DB XML CICS Content Security & over GIS Aggregator Policy Director HTTP MVS Server VSAM

Personalization FEPI

WebSphere Customer Web Database Web MQI Integration App. CICS Portal Hub Server MVS EarlyCloud MDp DB2 MQSeries ECI IIS Window NT Firewall Firewall NAS Palm Device AIX 4.2.1 Claims Net HTML Transcoder XML System

Network Dispatcher JDBC Custom Code Notes AIX 4.2.1 Object Interface Mail HTML Gateway HTTP(S) SMTP/POP Workflow Oracle Forms System Pager Sun Solaris 2.6 Domino 4.6 Gateway Oracle DB Adjuster Windows NT 4.0 16-Mar-03 TP & DC, C. Mohan System 23 WebSphere Customer Workload Examples

16-Mar-03 TP & DC, C. Mohan 24 Visa Resolve Online Architecture

16-Mar-03 TP & DC, C. Mohan 25 Web Services ƒ UDDI (Universal Description, Discovery and Integration) for discovering services ƒ SOAP (Simple Object Access Protocol) for using services ƒ WSDL (Web Services Description Language) for describing services ƒ A service = a set of port types ƒ Set of XML Schema definitions ƒ Set of message definitions

ƒ Set of operations Prolog ƒ Bindings provide implementation or usage details for services, port types, etc. Types ƒ App servers provide message handlers (for intercepting Messages incoming and outgoing messages) and serializers (for mapping complex data types between Java and XML) Operations For survey see Bindings http://www.almaden.ibm.com/u/mohan/WebServices_TES2002.pdf 16-Mar-03 TP & DC, C. Mohan 26 Program-Program Communication Paradigms

Q RPCs –Synchronous request-reply semantics –Memoryless; nuisance to implement context –Constrains degree of concurrency –Natural extension of procedure calls, but non-trivial handling of errors

Q Connection-based (e.g., SNA LU6.2 APPC) –Half/full duplex –More parallelism –New APIs

Q Messaging –Asynchronous; increased availability –More flexible scheduling of request handling –Supports more autonomy between servers/clients Important in extranet context (business-business) 16-Mar-03 TP & DC, C. Mohan 27 Asynchronous Processing

Program B

B

Queue 1 Program B A B Program A

Queue 1 Program B A B

Program A

Queue 1 A

Program A

16-Mar-03 TP & DC, C. Mohan 28 Speed and Load Balancing

Speed B Balancing Slower

Faster A B

C D

Load A Balancing

16-Mar-03 TP & DC, C. Mohan 29 MQSeries

Message Hub/Broker Business Rules Transformation Intelligent Routing Choreography

MQSeries Workflow End-to-end process management w/tracking and auditing, linking systems with people MQSeries Integrator Business information manipulation, content publish/subscribe, XML MQSeries Messaging services with assured delivery 16-Mar-03 TP & DC, C. Mohan 30 Publish/Subscribe

Streams

1 2 3 4 5 6 News Publisher Metals Futures 1 2 3 4 Trades

Subscription Set Subscription Filter1 1 3 2 5 Filter2 News Subscription Filter3 Metals Subscriber Futures Trades Subscription Set 1 3 7 Subscription Filter4 Filter5

16-Mar-03 TP & DC, C. Mohan 31 High Availability

ƒ Finally, client-server/commodity-hardware world trying to catch up with mainframe/midrange world ƒ IBM IMS/XRF, Tandem NonStop: Hot Standby ƒ IMS RSR: Remote Backups ƒ IBM DB2/MVS, IBM IMS/ESA Parallel Sysplex, DEC VaxCluster: Shared Disks, Coupling Facility ƒ Microsoft Wolfpack (NT), IBM Phoenix (AIX): Cluster Failover, Single-system Image ƒ Planned and unplanned outages ƒ 99.999% availability = 5 minutes downtime per year! ƒ Niche, fault-tolerant vendors disappearing ƒ Batch windows disappearing: concurrent online/batch

16-Mar-03 TP & DC, C. Mohan 32 High Availability

ƒ Not enough focus in research community

ƒ Online, parallel utilities

ƒ Sophisticated loads, reorgs, backup, restore, index build, checking of constraints

ƒ Fault tolerant coding, fault isolation and diagnosis

ƒ Minimal disruptive software version switching

16-Mar-03 TP & DC, C. Mohan 33 S/390 Parallel Sysplex

ƒ Major innovations by IBM Almaden Research for ƒGlobal locking and coherency control ƒLogging and recovery

16-Mar-03 TP & DC, C. Mohan 34 Goal-Oriented Workload Manager

16-Mar-03 TP & DC, C. Mohan 35 IBM Replication Architecture

Staging Apply DataPropagator MVS Source Tables Relational 400 Data 2 Capture MVS 6000 HP-UX 400 Update 6000 Solaris DataJoiner Copies Win NT DB2 Family 2 HP-UX Solaris Win NT Update Multi-vendor

Trigger Refresh DataPropagator DataRefresher/2 NonRelational Administration/2 Capture IMS

DataRefresher DataHub Control Point IMS, VSAM, Flat Files, Other

16-Mar-03 TP & DC, C. Mohan 36 Caching for Web Applications

Considerations for caching in web context are: ƒ What, when and where to cache ƒ Granularity of caching: web pages, page fragments, servlet execution result, EJB state, SQL query result, tables, ... ƒ Location of cache: client, proxy, edge-of-net, internet service provider, edge-of-enterprise, app server, web server, DBMS ƒ Caching and invalidation policies: application transparency, push vs. pull, freshness maintenance, triggers, log sniffing ƒ Enabling cache exploitation: routing, failover, accounting, authentication, authorization, ... ƒ Tools: performance monitoring, analysis Related DB Technologies: replication, materialized views, mediator systems, client-server DBMSs, buffer management, main- memory DBMSs, , content mgmt, ... For comprehensive tutorial, see http://www.almaden.ibm.com/u/mohan/Caching_VLDB2001.pdf 16-Mar-03 TP & DC, C. Mohan 37 Points of Non-Database Caching

Enterprise or ISP Motivation: Response Time, Bandwidth Forward proxy cache ESCache browser Edge of internet cache

ND ESCache Internet (exchange points)

browser

CS/AS/WS cache Edge of WCS enterprise WAS Motivation: ND cache WS Cost-performance ND DB Scalability . . . DB DB: Database WCS WAS ESCache: Edge Server Cache ESCache ND: Network Dispatcher WS AS: App Server Enterprise CS: Commerce Server WS: Web Server 16-Mar-03 TP & DC, C. Mohan 38 Caching Landscape

ƒ End-to-end Caching involves caching in 4 logical tiers ƒ Includes a content distribution, replication and invalidation backbone

where Routers Application Server Application Server Database Server is it cached? Web Servers J2EE Web Container J2EE EJB Container Edge Servers Datasources

caching Edge of Presentation Business Data segments Enterprise/ Logic Logic Network

what HTTP Content HTTP Responses Command Result In memory cache does it cache? (HTML/XML/GIFS) from JSP/Servlet Caching Data replicas HTTP Content (HTML/XML/GIF/etc) EJB Caching Fragments Command Results JDBC Results ESI Fragments Web Services Structured Data Java Objects Results Objects

distributed replication and notification

16-Mar-03 TP & DC, C. Mohan 39 Classical Web Setup

User User

Edge Server Edge Server Edge Server

http Server 1 http Server 2 . . . http Server n

AS 1 AS 2 . . . AS m

DB

16-Mar-03 TP & DC, C. Mohan 40 Web Setup with Mid-Tier and Edge Data Cache

User User

Edge Server Edge Server Edge Server

DBCache DBCache DBCache

http Server 1 http Server 2 . . . http Server n

AS 1 AS 2 . . . AS m DBCache DBCache DBCache

DB2 Oracle

Goal: Help improve scalability and performance of e-business apps 16-Mar-03 TP & DC, C. Mohan 41 Workflow/Business Processes

Procedure Manual Customer Request

Gather Data

Spread- Transfer sheet Update Database

Customer Response Service to Customer

16-Mar-03 TP & DC, C. Mohan 42 A Common Programming Model

16-Mar-03 TP & DC, C. Mohan 43 Services-Oriented Architecture

16-Mar-03 TP & DC, C. Mohan 44 Workflow Developments

ƒ B2B commerce has popularized inter-organizational workflows ƒ Web Services Flow Language (WSFL) spec published ƒ Microsoft releases BizTalk Server with support for transaction compensation ƒ IBM buys CrossWorlds Software for B2B collaboration ƒ Specification of Business Process Execution Language for Web Services (BPES4WS) released in August 2002

16-Mar-03 TP & DC, C. Mohan 45 Application Servers ƒ Modern equivalents of traditional TP monitors ƒ Except Microsoft, all based on J2EE ƒ Commercial: BEA WebLogic, IBM WebSphere, Oracle9i Application Server, Sun ONE (iPlanet), Sybase EAServer, HP, Iona, IronFlare Orion, ATG, Allaire, SilverStream, Brokat, Borland, Pramati, Fujitsu Interstage, Hitachi, SAS, Macromedia, Trifork, NEC, Computer Associates, …, Microsoft .NET ƒ Open Source: JBoss, JOnAS ƒ Some representative quotes: f "J2EE is to Java what SQL was to databases“ f "Without J2EE, it is not an application server" ƒ Vendor differentiation based on scalability, high availability, reliability, ease of use, legacy data & app integration, complementary products (e.g., for personalization, commerce, workflow) and extensions See http://www.flashline.com/components/appservermatrix.jsp for application server comparison matrix

16-Mar-03 TP & DC, C. Mohan 46 J2EE Application Server Market Share

Giga's Final Estimates for 2001

Others 12.0% HP 3.0% IBM Sybase IBM 4.0% 34.0% BEA Oracle Sun 6.0% Oracle Sun Sybase 7.0% HP Others

BEA 34.0%

ƒ 2001: $2.19B (39% Y2Y growth) ƒ 2001 (2000) : IBM 34% (31%), BEA 34% (36%), Sun 7% (9%), Oracle 6% (3%), Sybase 4%, HP 3%, Others 12% 16-Mar-03 TP & DC, C. Mohan 47 Application Design Patterns

Model View Controller (MVC) Architecture very popular ƒ Origins in Smalltalk http://java.sun.com/blueprints/patterns/j2ee_patterns/model_view_controller/index.html

16-Mar-03 TP & DC, C. Mohan 48 Application Server Functionality ƒ Quality of Service: clustering, cloning, routing, failover, session persistence, session migration, load balancing ƒ Java virtual machine (JVM) ƒ Rules engine for personalization, commerce pricing, message transformations, ... ƒ Caching: data, objects ƒ Authentication, authorization, single sign-on ƒ Web server plug-ins for caching, load balancing, failover ƒ Messaging, development tooling 9 Component Container 9 Connections: 9 Transaction Integration 9 RDBMS 9 Thread/Connection Pooling 9 Transaction Systems 9 Memory Management 9 ERP Systems 9 Load Balancing/Failover 9 Dynamic Page Generation 9 Session/State Mgmt 9 HTTP 16-Mar-03 TP & DC, C. Mohan 49 Standard Transaction Services

Q X/Open defined XA transaction standard

–Supported by TP monitors and RDBMSs

Q OMG defined OTS: object version of XA + a few more features (e.g., nested transactions)

–Supported by ORB/TP vendors

Q Sun defined JTS: Java mapping of OTS with extensions

–Interoperates with non-Java environments No support yet for atomic updates over disparate web sources!

16-Mar-03 TP & DC, C. Mohan 50 Advanced Transaction Models

Q Proposed to overcome deficiencies of ACID transactions

Q Nested transaction model implemented in many research systems but only in a few commercial systems (e.g., in Transarc's Encina) An optional feature of OMG's OTS

Q Even more advanced models (e.g., sagas) researched a lot, but only simple implementations exist –For supporting business units of work –TP monitors not evolved in this direction –Commercial support has been very slow in coming –Finally showing up in workflow products like Microsoft BizTalk Server and standards like WS-Coordination

16-Mar-03 TP & DC, C. Mohan 51 WebSphere Platform Capabilities

Reach & User Experience Business Integration Delivering Information Anywhere Making it all Work Together Broadest Portal offering in the Process Integration marketplace Application Integration Support for pervasive devices Messaging 'Out of box' commerce presence

Foundation Tools The Engine of e-Business The Right Tool for the Right Job Leading open standards based HTML through EJB development capabilities application server in marketplace Open source environment supported by 100s Broadest set of operating of products environment support Unmatched efficiency / time to deployment

16-Mar-03 TP & DC, C. Mohan 52 Java 2 Platform, Enterprise Edition (J2EE)

Application Server Platform for Java (latest: 1.3, 7/2001) ƒ Java Servlets & Java Server Pages (JSP) ƒ Enterprise Java Beans (EJB) ƒ Java Transaction API (JTA) ƒ Java Transaction Service (JTS) ƒ Java API for XML Parsing (JAXP) ƒ Java Messaging Service (JMS) ƒ Message Driven Beans (MDB) ƒ Remote Method Invocation (RMI) ƒ Java Database Connection 2 (JDBC2) ƒ Java Connector Architecture (JCA) ƒ Java Naming and Directory Interface (JNDI) ƒ JavaBeans Activation Framework (JAF)

http://java.sun.com/j2ee/sdk_1.3/index.html For excellent news, views, etc., visit http://www.theserverside.com/ 16-Mar-03 TP & DC, C. Mohan 53 Microsoft's .NET

ƒ Make resources, applications and information, available any time, any place and on any device ƒ Relies on UDDI, SOAP, WSDL and software-as-a-service model ƒ Emphasis on multiple languages and access devices ƒ Common Language Specification & Runtime (CLS & CLR)

16-Mar-03 TP & DC, C. Mohan 54 Summary and Outlook

ƒ J2EE has become wildly successful ƒ Microsoft attempting to fight with .NET ƒ Revival of object to mapping ƒ XML parsing overhead too high ƒ Standardized benchmarks beginning to take off ƒ EJBs yet to expose full spectrum of database functionality ƒ Web services becoming popular, even for intranet usage - being extended with transactions, business processes, ... ƒ Compensating transaction support begins to appear finally ƒ Research needed on self-tuning/adapting systems ƒ Caching appears everywhere

16-Mar-03 TP & DC, C. Mohan 55 Summary and Outlook

ƒ Identity management is crucial ƒ Embedded systems are the wave of the future ƒ ISVs will be forced to give up proprietary application server-like infrastructure ƒ J2EE 1.4 in Beta, proposed final draft 2 in public review: JAX-RPC, SOAP messaging and JCA 1.5 mandated ƒ Sun agrees to allow open source Java spec implementations ƒ There will be vendor consolidation - smaller vendors dropping their app servers (HP quit in 7/2002)

16-Mar-03 TP & DC, C. Mohan 56 References

ƒ Java2 SDK, Enterprise Edition, V1.3.1, January 2002 ƒ TheServerSide.com, http://www.theserverside.com/ ƒ Java Technology at IBM developerWorks, http://www.ibm.com/developerworks/java/ ƒ Pezzini, M., Natis, Y. Application Server Market: Maturity is in Sight, Gartner's Application Integration & Strategies Researach Note M-14-6746, Gartner, October 2001. ƒ Natis, Y. Oracle9iAS: A 'Dark Horse' in the Application Server Race, Gartner's Application Integration and Middleware Research Note SPA-14-9707, Gartner, January 2002. ƒ Bodoff, S., et al. The J2EE Tutorial, Sun, January 2002. http://java.sun.com/j2ee/tutorial/ ƒ Haase, K. Java Message Service Tutorial, Sun, March 2002. http://java.sun.com/products/jms/tutorial/index.html ƒ Roman, E., Ambler, S., Jewell, T. Mastering Enterprise Java Beans 2.0, 2nd Edition, Wiley, 2002. Free download of book at http://www.theserverside.com/books/masteringEJB/download/MasteringEJB2.pdf ƒ Marinescu, F. EJB Design Patterns, Wiley, 2002. Free download of book at http://www.theserverside.com/books/EJBDesignPatterns/download/ejbdesignpatterns.pdf ƒ Singh, I., Stearns, B., Johnson, M., The Enterprise Team. Designing Enterprise Applications with the J2EE Platform, 2nd Edition, Addison-Wesley, March 2002. Free download at http://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/book.pdf ƒ Fancellu, D., Sharp, R., Stephes, M. EJB's 101 Damnations, http://www.softwarereality.com/programming/ejb/index.jsp

16-Mar-03 TP & DC, C. Mohan 57 References

ƒ iPlanet Application Server 6.0 White Paper, Technical Reference Guide, May 2000. http://wwws.sun.com/software/products/appsrvr/ias6_techref.pdf ƒ JBoss Open Source Application Server, http://www.jboss.org/ ƒ JOnAS Open Source Application Server, http://www.evidian.com/jonas/index.htm ƒ Mohan, C. Tutorial: Caching Technologies for Web Applications, 27th International Conference on Very Large Data Bases (VLDB), Rome, September 2001. http://www.almaden.ibm.com/u/mohan/Caching_VLDB2001.pdf ƒ Dietzen, S. HPTS Panel: Web Application Server Architecture, 9th International Workshop on High Performance Transaction Systems (HPTS), Asilomar, October 2001. ƒ IBM WebSphere, http://www.ibm.com/websphere/ ƒ BEA WebLogic 7 Manuals, http://e-docs.bea.com/wls/docs70/pdf.html ƒ Mohan,C. Tutorial: Advanced Transaction Models - Survey and Critique, ACM SIGMOD International Conference on Management of Data, Minneapolis, May 1994. Available at http://www.almaden.ibm.com/cs/exotica/tran_models_tutorial_sigmod94.ps ƒ Mohan, C. Tutorial: Trends in Workflow Management Research, Products, and Standards, NATO Advanced Study Institute on Workflow Management and Interoperability, Istanbul, August 1997. Revised presentation material available at http://www.almaden.ibm.com/u/mohan/workflow.pdf ƒ Mohan, C. Dynamic e-Business: Trends in Web Services, Proc. 3rd VLDB Workshop on Technologies for E-Services (TES'02), Hong Kong, August 2002. http://www.almaden.ibm.com/u/mohan/WebServices_TES2002.pdf

16-Mar-03 TP & DC, C. Mohan 58 References

ƒ Mohan, C. Advanced Technology Seminar: Application Servers and Associated Technologies, 19th IEEE International Conference on Data Engineering (ICDE), Bangalore, March 2003. http://www.almaden.ibm.com/u/mohan/AppServersTutorial_ICDE2003_Slides.pdf ƒ Model-View-Controller Architecture, Sun, http://java.sun.com/blueprints/patterns/j2ee_patterns/model_view_controller/index.html ƒ Java Pet Store Architectural Overview, Sun, http://java.sun.com/blueprints/code/jps11/archoverview.html ƒ High-Performance JMS Messaging, Crimson Consulting Group, 2002. http://wwws.sun.com/software/products/message_queue/wp_JMSperformance.pdf ƒ Sun ONE Application Server, http://wwws.sun.com/software/products/appsrvr/home_appsrvr.html ƒ ECPerf and BEA: Brothers in Arms, BEA, http://dev2dev.bea.com/resourcelibrary/whitepapersdetail.jsp?highlight=whitepapers&filePath =components%2Fdev2dev%2Fresourcelibrary%2Fwhitepapers%2Fwhitepaper_ecperf.htm ƒ Application Server Comparison Matrix, http://www.flashline.com/components/appservermatrix.jsp ƒ O’Reilly onJava.com – The Independent Source for Enterprise Java, http://www.onjava.com/ ƒ Rubinstein, D. Next Up for J2EE: Web Services, JCA 1.5, SDTimes, August 2002. http://www.sdtimes.com/news/060/story5.htm ƒ ECPerf Specification, http://java.sun.com/j2ee/ecperf/download.html ƒ ECPerf Results, http://ecperf.theserverside.com/ecperf/ 16-Mar-03 TP & DC, C. Mohan 59