Distributed Handler Architecture (DHArch) Beytullah Yildiz Advisor: Prof. Geoffrey C. Fox.

Slides:



Advertisements
Similar presentations
Web Service Handler Architecture Beytullah Yildiz
Advertisements

Distributed Processing, Client/Server and Clusters
Database Architectures and the Web
Master/Slave Architecture Pattern Source: Pattern-Oriented Software Architecture, Vol. 1, Buschmann, et al.
Broker Pattern Pattern-Oriented Software Architecture (POSA 1)
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services Matt Welsh, David Culler, and Eric Brewer Computer Science Division University of.
Rheeve: A Plug-n-Play Peer- to-Peer Computing Platform Wang-kee Poon and Jiannong Cao Department of Computing, The Hong Kong Polytechnic University ICDCSW.
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 17 Client-Server Processing, Parallel Database Processing,
Web Service Architecture Part I- Overview and Models (based on W3C Working Group Note Frank.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Chapter 9 Classification And Forwarding. Outline.
DISTRIBUTED COMPUTING
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Principles for Collaboration Systems Geoffrey Fox Community Grids Laboratory Indiana University Bloomington IN 47404
Design and Implementation of a Single System Image Operating System for High Performance Computing on Clusters Christine MORIN PARIS project-team, IRISA/INRIA.
Client/Server Architectures
1 A Framework for Network Monitoring and Performance Based Routing in Distributed Middleware Systems Gurhan Gunduz Advisor: Professor.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Institute of Computer and Communication Network Engineering OFC/NFOEC, 6-10 March 2011, Los Angeles, CA Lessons Learned From Implementing a Path Computation.
Version 4.0. Objectives Describe how networks impact our daily lives. Describe the role of data networking in the human network. Identify the key components.
Managing Service Metadata as Context The 2005 Istanbul International Computational Science & Engineering Conference (ICCSE2005) Mehmet S. Aktas
An Introduction to Software Architecture
Pattern Oriented Software Architecture for Networked Objects Based on the book By Douglas Schmidt Michael Stal Hans Roehnert Frank Buschmann.
DISTRIBUTED COMPUTING
Architectural Design To explain the advantages and disadvantages of different distributed systems architectures To discuss client-server and distributed.
Architecting Web Services Unit – II – PART - III.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Integrated Collaborative Information Systems Ahmet E. Topcu Advisor: Prof Dr. Geoffrey Fox 1.
1 Multiprocessor and Real-Time Scheduling Chapter 10 Real-Time scheduling will be covered in SYSC3303.
Types of Operating Systems
April 26, CSE8380 Parallel and Distributed Processing Presentation Hong Yue Department of Computer Science & Engineering Southern Methodist University.
Event-Based Hybrid Consistency Framework (EBHCF) for Distributed Annotation Records Ahmet Fatih Mustacoglu Advisor: Prof. Geoffrey.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
 Apache Airavata Architecture Overview Shameera Rathnayaka Graduate Assistant Science Gateways Group Indiana University 07/27/2015.
Lecture 6: Sun: 8/5/1435 Distributed Applications Lecturer/ Kawther Abas CS- 492 : Distributed system & Parallel Processing.
Distributed Information Systems. Motivation ● To understand the problems that Web services try to solve it is helpful to understand how distributed information.
Shuman Guo CSc 8320 Advanced Operating Systems
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 13. Review Shared Data Software Architectures – Black board Style architecture.
Types of Operating Systems 1 Computer Engineering Department Distributed Systems Course Assoc. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2015.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Distributed Handler Architecture (DHArch) Beytullah Yildiz Advisor: Prof. Geoffrey C. Fox.
Distributed System Architectures Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
Distributed Handler Architecture (DHArch) Beytullah Yildiz Advisor: Prof. Geoffrey C. Fox.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
REST By: Vishwanath Vineet.
Distributed Handler Architecture Beytullah Yildiz
CSC 480 Software Engineering Lecture 17 Nov 4, 2002.
Representational State Transfer COMP6017 Topics on Web Services Dr Nicholas Gibbins –
Distributed Systems Architectures Chapter 12. Objectives  To explain the advantages and disadvantages of different distributed systems architectures.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
N-Tier Architecture.
Architecting Web Services
Self Healing and Dynamic Construction Framework:
Architecting Web Services
CSC 480 Software Engineering
Mobile Agents.
Introduction to Databases Transparencies
Distributed computing deals with hardware
Presented by: Francisco Martin-Recuerda
Experiences in Deploying Services within the Axis Container
Introduction To Distributed Systems
Presentation transcript:

Distributed Handler Architecture (DHArch) Beytullah Yildiz Advisor: Prof. Geoffrey C. Fox

Outline Web Service handler concept Motivations and research issues Distributed Handler Architecture (DHArch) Measurements and Analysis Contributions and Future works 2

Web Service Handler I Additive functionality to Web Services Called as either handler or filter Supports more modular architecture; separation of tasks Processes SOAP header and body Incrementally adds new capability to Web Service endpoint Many handlers can get together to build a chain 3

Web Service Handler II Conventional handler structures – JAX-RPC – Apache Axis – Web Service Enhancement (WSE) Utilized in request and response path Leveraged by client and service From user point of view, one of two main computing components of Web Services 4

Handler Examples Security, reliability, logging, monitoring, compression and so on Mediators; especially between WS-specs i.e WS-Reliability and WS-Reliable Messaging WS- specifications 5 SpecificationStandard byImplemented by WS-ReliabilityOASISCGL WS-Reliable MessagingMicrosoft, IBM,…CGL, Apache WS-AddressingMicrosoft, IBM,…Apache WS-SecurityOASISApache WS-EventingMicrosoft, IBM,…CGL, Extreme Lab WS-NotificationOASISApache, Extreme Lab WS-Resource FrameworkOASISApache WS-TrustOASISExtreme Lab WS-SecureConversationOASISExtreme Lab

Motivations Web Services utilizing many handlers – Fat services A handler causing Bottleneck – convoy effect Benefits for reusability – a handler utilized by many Web Services – a handler exploited by both client and service 6

Motivating Scenario Many handlers with possible substantial cost The cost of the sequential handler execution where T k is the k th handler execution time A bottleneck handler 7

Research Issues I Performance – the benefits and costs of distributing handlers Scalability – throughput – the number of handlers for deployment Parallelism/concurrency – Handler parallelism – Pipelining for the messages Flexibility and Extensibility – interoperable with other SOAP processing engine – easily deployable and removable handler mechanism 8

Research Issues II Orchestration – Efficient and effective handler orchestration Messaging for the distributed handlers – the way of distribution – task distribution – advantages and disadvantages Principles for distributing a handler – conditions and requirements 9

Distributed Handler Architecture (DHArch) 10

Communication Manager Manages internal messaging Utilizes a MOM, NaradaBrokering (other MOMs could be used) – Publish/Subscribe paradigm – Queuing regulates message flow – Asynchronous messaging – Guaranteed message delivery – Fast and efficient – Scales very well XML based messaging for the handlers 11

12 Communication Manager

Messaging Format Serialization of message context on the wire Extensible and flexible Consists of three main parts: – ID 128 bit UUID generated key – Properties Conveys the necessary properties to the handler – Payload Carries relevant SOAP messages d6dc-0b0e-4aaa-95ff-2e758722a959 false true ………

Distributed Handler Architecture (DHArch) 14

Gateway Interface between DHArch and A Web Service Container Provides extensibility Facilitates interoperation with other SOAP processing engines A gateway needs to be deployed for SOAP processing engine that need to be interoperate with. 15

Description and Execution of Orchestration 16 Separation of the flow directives and corresponding execution The directives comprise four basic constructs: sequential parallel looping conditional Engine manages two execution styles: – sequential – parallel

Distributed Handler Message Context Keeps necessary information about a message to carry out the execution A unique context associated with each message. The orchestration structure is maintained within the context. Encapsulates the message orchestration structures handler related parameters parameters associated with the stages 17

18

Message traversal in the stages A message travels from stage to stage. Every handler orchestration contains at least one stage. Every stage contains at least one handler. Within a stage, handlers executed parallel. A message cannot exit a stage without completion of the execution of its constituent handlers. 19

Summary of the Execution Separation of the description from the execution prevents the orchestration engine from becoming too complex. DHArch utilizes two context objects: – Interacting Web Service container context – Distributed Handler Message Context (DHMContext) Queues are leveraged to regulate the message flow. Caching expedites the message processing by decreasing the access time. Pipelining is leveraged as well as handler parallism. The message execution can be prioritized. 20

Benchmarks The set of benchmarks Performance Scalability Overhead The deployment of well known WS- Specifications Utilized Handlers in these benchmarks Created for the benchmarking purposes Actual handlers 21

Benchmark I- Performance I Handler ACPU Bound Handler BCPU Bound Handler CIO Bound Handler DIO Bound Handler ECPU/IO Handler Configurations 1.Apache Axis sequential 2.DHArch Sequential Stage 1A, C Stage 2B,D Stage 3E Stage 1A, B Stage 2C,D Stage 3E Stage 1A,B,C,D Stage 2E The goal is to measure the performance for a single request. Every measurement is observed 100 times. Five handlers are utilized, six handler (software) configurations are selected. Hardware configurations Single processor Multiprocessor Multicore Cluster utilizing LAN Stage 1A,B,C,D, E

Handler Configurations Axis Only Using by DHArch Benchmark I- Performance II 23

Benchmark II- Scalability I The goal is to measure the execution time while the message rate increases. A cluster utilizing multicore machines is leveraged 24

Benchmark II- Scalability II 25  Apache Axis utilizes single machine  DHArch utilizes multiple machines

Benchmark II- Scalability III 26 Without handler parallelism – DHArch increases the execution time because of the distribution overhead. – DHArch running on a cluster increases the throughput. With handler parallelism – We can achieve both increased message throughput and reduced execution time for per message. – Sequential and Parallel executions result in the same maximum message throughput.

Benchmark III- Overhead I The goal is to measure the overhead related to the distribution of a single handler. In every step, measurements are observed 100 times. Four hardware configurations are utilized. Multiprocessor results will be illustrated. 27

Benchmark III-Overhead II 28 The formula : Overhead = (T dharch – T axis ) / N Where T dharch is elapsed time in DHArch T axis is elapsed time in Axis N is the number of handlers

Benchmark IV-WSRF and WS-Eventing I 29 The goal is to show the deployment of the well-known WS-specifications in DHArch. – WS-Eventing (CGL) – WS-Resource Framework (Apache) A sensor stateful resource and relevant events are created. The sensor is motivated by CGL work on GPS sensors. A cluster using Local Area Network is utilized.

Benchmark IV- II 30

Contributions System research A distributed handler architecture Efficient, scalable, modular and transparent Concurrent handler execution Pipelining for the message execution Separation of the description and the execution for the handler orchestration Queuing to regulate flows Message based handler sequence Identifying the circumstances where this architecture has advantages Parallelism within the handlers Easy use multiple-machine clusters Comprehensive benchmarks to evaluate the handler distribution for Web Services System software A prototype: DHArch WS-Eventing and WSRF deployment 31

Future Works Using DHArch for the internal functions of Web Service Container: implicit handlers An agent that finds the best orchestration configuration for the distributed handler – dynamic load balancing Improving fault tolerance Security – NaradaBrokering Security Framework Comparison with the XSUL+DEN, another approach from Extreme Lab 32