R. Jiménez-Peris Scalability Evaluation of the Replication Support of JOnAS, an Industrial J2EE Application Server A. Paz, F. P é rez-Sorrosal, M. Patiño-Martínez,

Slides:



Advertisements
Similar presentations
1 Copyright © 2005, Oracle. All rights reserved. Introduction.
Advertisements

1 Mobicents Training JSLEE & SIP Servlets Interoperability through the Mobicents Communications Platform Jean Deruelle, Mobicents SIP Servlets Lead.
Capacity Planning and Predicting Growth for Vista Amy Edwards, Ezra Freeloe and George Hernandez University System of Georgia 2007.
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
A DAPT IST Replication Framework: Progress Report Vance Maverick University of Bologna Dec. 11, 2003.
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
E-Transactions: End-to-End Reliability for Three-Tier Architectures Svend Frølund and Rachid Guerraoui.
Sapana Mehta (CS-6V81) Overview Of J2EE & JBoss Sapana Mehta.
Team 1: Box Office : Analysis of Software Artifacts : Dependability Analysis of Middleware JunSuk Oh, YounBok Lee, KwangChun Lee, SoYoung Kim,
Introduction to Enterprise JavaBeans. Integrating Software Development Server-side Component Model Distributed Object Architecture –CORBA –DCOM –Java.
GGF Toronto Spitfire A Relational DB Service for the Grid Peter Z. Kunszt European DataGrid Data Management CERN Database Group.
Enterprise Applications & Java/J2EE Technologies Dr. Douglas C. Schmidt Professor of EECS.
Java 2 – Enterprise Edition Kevin J. LaFata April 21, 2003 UM – St. Louis.
Transactional Services Ricardo Jiménez-Peris Marta Patiño-Martínez Technical University of Madrid 1 st Adapt Workshop 23 rd -24 th September 2002 Madrid,
J2EE Java2 Enterprise Edition by Damian Borth. Contents Introduction Architectures styles Components Scenarios Roles Processing a HTTP request.
Chris Shuster 4/29/2009 1Chris Shuster.  Application Servers ◦ Backend processing platform. ◦ Multiple platforms, operating system and architecture.
Basic Services: Architecture Options Vance Maverick ADAPT Bologna Feb. 13, 2003.
Overview  Strong consistency  Traditional approach  Proposed approach  Implementation  Experiments 2.
July 23 th, 2005 Software Architecture in Practice RiSE’s Seminars Bass’s et al. Book :: Chapter 16 Fred Durão.
Introduction to EJB INFORMATICS ENGINEERING – UNIVERSITY OF BRAWIJAYA Eriq Muhammad Adams J
A DAPT IST Middle-R: A Middleware for Dynamically Adaptive Database Replication R. Jiménez-Peris, M. Patiño-Martínez, Jesús Milán Distributed.
© 2004 IBM Corporation BEA WebLogic Server Introduction and Training.
Emmanuel Cecchet et al.  Performance Scalability of J2EE application servers.  Test effect of: ◦ Application Implementation Methods ◦ Container Design.
© JBoss Inc JBoss Clustering An Overview Bela Ban Lead JGroups, Manager Clustering Group.
Chapter 10 EJB Concepts of EJB Three Components in Creating an EJB Starting/Stopping J2EE Server and Deployment Tool Installation and Configuration of.
EJB Overview Celsina Bignoli Distributed Business Applications Server DB Client DB Server DB.
1 J2EE Components. 2 Application Servers relieve the programming burden for business distributed components. They provide support for system level services.
PowerTier EJB in High-Performance Applications John Killoran European Technical Services Manager Persistence Software.
Ing. Ignacio Roqueta ARTech GeneXus and J2EE.
NLM Digital Repository Server Architecture January 18, 2011.
Eric Westfall – Indiana University James Bennett – Indiana University ADMINISTERING A PRODUCTION KUALI RICE INFRASTRUCTURE.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 21, 2005.
Replication & EJB Graham Morgan. EJB goals Ease development of applications –Hide low-level details such as transactions. Provide framework defining the.
Enterprise Java Bean Matt. 2 J2EE 3 J2EE Overview.
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
Introduction to J2EE Architecture Portions by Kunal Mehta.
GigaSpaces Global HTTP Session Sharing October 2013 Massive Web Application Scaling.
JavaOne '99 Confidential Performance and Scalability of EJB-based applications Sriram Srinivasan Principal Engineer, BEA/WebLogic.
J2EE Structure & Definitions Catie Welsh CSE 432
Indiana University’s Name for its Sakai Implementation Oncourse CL (Collaborative Learning) Active Users = 112,341 Sites.
Scaling Dynamic Content Applications through Data Replication - Opportunities for Compiler Optimizations Cristiana Amza UofT.
1 Specification and Implementation of Dynamic Web Site Benchmarks Sameh Elnikety Department of Computer Science Rice University.
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
Consistent and Efficient Database Replication based on Group Communication Bettina Kemme School of Computer Science McGill University, Montreal.
Measuring Application Server Performance using ECperf David Lucas President Lucas Software Engineering, Inc
Applications Web et bases de données en grappe Séminaire InTech 3 Février 2005 – Grenoble.
Usenix Annual Conference, Freenix track – June 2004 – 1 : Flexible Database Clustering Middleware Emmanuel Cecchet – INRIA Julie Marguerite.
Preventive Replication in Database Cluster Esther Pacitti, Cedric Coulon, Patrick Valduriez, M. Tamer Özsu* LINA / INRIA – Atlas Group University of Nantes.
Enterprise Java Beans. Model 1 J2EE – Web View Model/View/Controller Model View Control Data base Web Server Model One Architecture HTTP Request HTTP.
1 Admission Control and Request Scheduling in E-Commerce Web Sites Sameh Elnikety, EPFL Erich Nahum, IBM Watson John Tracey, IBM Watson Willy Zwaenepoel,
Enterprise JavaBeans 3.0. What is EJB 3.0 -Reusable server-side component framework-technology -Designed to support building demanding enterprise – level.
Introduction to EJB. What is an EJB ?  An enterprise java bean is a server-side component that encapsulates the business logic of an application. By.
1 Distributed System using J2EE. 2 What is J2EE?  J2EE (Java2 Enterprise Edition) offers a suite of software specification to design, develop, assemble.
1 Distributed Systems Distributed Object-Based Systems Chapter 10.
Introduction to EJB. What is an EJB ?  An enterprise java bean is a server-side component that encapsulates the business logic of an application. By.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
FP CumuloNimbo: A Highly Scalable Transactional Cloud PaaS Bettina Kemme, McGill University CumuloNimbo Canada EU Future Internet Workshop, 2011.
Alan L. Batongbacal CS 4244 / 01 Nov 2000
EJB Enterprise Java Beans JAVA Enterprise Edition
Replicazione e QoS nella gestione di database grid-oriented Barbara Martelli INFN - CNAF.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
SPECjAppServer2004 Scott Oaks Java Enterprise Performance.
Introduction to J2EE Architecture
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Distributed System Using Java 2 Enterprise Edition (J2EE)
Distributed Object-based systems
Admission Control and Request Scheduling in E-Commerce Web Sites
Developing and testing enterprise Java applications
Enterprise Java Beans.
Presentation transcript:

R. Jiménez-Peris Scalability Evaluation of the Replication Support of JOnAS, an Industrial J2EE Application Server A. Paz, F. P é rez-Sorrosal, M. Patiño-Martínez, R. Jiménez-Peris Distributed Systems Laboratory Lsd Universidad Politécnica de Madrid (UPM)

EDCC Valencia, Apr Focus  Reporting on the implementation of replication protocol in an industrial application server, JOnAS, for J2EE-based multi-tier architectures  and its evaluation using the industrial benchmark for J2EE, SPEC AppServ.

EDCC Valencia, Apr Replication Model (App) App. Data (App) Replication Protocol

EDCC Valencia, Apr Replication Protocol: Features  Multi-master/Update everywhere  Based on eager replication  Preserves state/data consistency  Exactly-once semantics  Transparent replication via specialized replication proxies.  Suitable for J2EE environments, which include:  Transactional Service (JTA/JTS)  Component Model: Enterprise Java Beans (EJBs)  Stateless (SLSB) and Stateful (SFSB) Session Beans, Entity Beans (EB) & Message-Driven (MDB)

EDCC Valencia, Apr Replication Protocol  Each client session/request is encompassed in a TX (container managed transactions)  An invocation performs changes on client- related state (SFSFs) and persistent state (EBs)  At commit time...  The client session state (SFSBs) is multicast to the replicas acting as backups (FIFO Order)  EBs are written to the shared DB

EDCC Valencia, Apr Replication Protocol (II)  To preserve exactly-once semantics...  As part of an update request, a marker (e.g. TX Id) is written in the shared DB with the returned response  When SFSBs are replicated, the marker and the response are attached to the message  In case of failover...  The client connects to a new replica  If client has not received a response from the old primary...  Resubmits the request to the new primary  The new primary checks if the marker is present in the DB  If present, it returns the stored result. Otherwise, it re- executes the request

EDCC Valencia, Apr Example

EDCC Valencia, Apr Evaluation: SPECjAppServer 2004  Benchmark to compare J2EE AS implementations  Car Dealer Application Domain  Workload Generator injects load (IR) in the App.  Clients = IR x 10  3 TX Types:  Browse Vehicle Catalog (50%) Read-only  Purchase Vehicles (25%) Read-write  Manage Dealer Inventory (25%) Read-write  Max. Response Time for requests (2 secs.)  Throughput measured as TX/Sec.  3 Phases: Ramp-up (4 Min) + Measure (10 Min) + Cool- down (4 Min)

EDCC Valencia, Apr Evaluation: Environment  HW Environment  Up to 10 nodes  Connected through 100 MBps Ethernet  Node: 2xAMD Athlon 2GHz CPU, 1GB RAM, 2x320 GB HD  SW Environment  Fedora Core 3 OS  Apache MOD_JK (Load Balancing)  Tomcat Servlet Container  JOnAS AS (Baseline) and (Rep. Service)  Two DBMSs: PostgreSQL 8.2 and Oracle 10  JGroups GCS

EDCC Valencia, Apr Evaluation: Configuration

EDCC Valencia, Apr Results: PostgreSQL Throughput 1 replica no replication 2 replicas 3-6 replicas

EDCC Valencia, Apr Results: Postgres Resp. Time (Browse) 1 replica no replication 2-5 replicas 6 replicas

EDCC Valencia, Apr Results: Oracle Throughput 1 replica 2 replicas 3 replicas 4 replicas 5-9 replicas no replication

EDCC Valencia, Apr Results: Oracle Resp. Time (Browse) 1 replica no replication 2 replicas 3 replicas 4 replicas 5-9 replicas

EDCC Valencia, Apr Results: Postgres Resp. Time (Purchase) 1 replica no replication 2-5 replicas 6 replicas

EDCC Valencia, Apr Results: Oracle Resp. Time (Purchase) 1 replica no replication 2 replicas 3 replicas 4-9 replicas

EDCC Valencia, Apr Results: Postgres CPU Usage (No Replication IR=3 and 4) AS DB

EDCC Valencia, Apr Results: Postgres CPU Usage (1 Replica IR=3 and 4) AS DB

EDCC Valencia, Apr Results: Postgres CPU Usage (6 Replicas IR=3 and 4) AS DB

EDCC Valencia, Apr Results: Oracle CPU Usage (1 Replica With and WO Rep. IR=8) DB AS

EDCC Valencia, Apr Results: Oracle CPU Usage (2 Replicas IR=13) DB AS

EDCC Valencia, Apr Conclusions  We have presented an experience  in implementing replication for an industrial J2EE application server, JOnAS,  evaluating the protocol with an industrial benchmark  Provides exactly-once semantics  The evaluation has shown...  Scalability can be achieved in addition to HA  The database is the limiting factor for scalability