SOA @ ebay : How is it a hit



Similar documents
SOA Fundamentals For Java Developers. Alexander Ulanov, System Architect Odessa, 30 September 2008

AquaLogic Service Bus

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

<Insert Picture Here> Increasing the Effectiveness and Efficiency of SOA through Governance

Closer Look at Enterprise Service Bus. Deb L. Ayers Sr. Principle Product Manager Oracle Service Bus SOA Fusion Middleware Division

SOA Planning Guide The Value Enablement Group, LLC. All rights reserved.

Guiding SOA Evolution through Governance From SOA 101 to Virtualization to Cloud Computing

A Quick Introduction to SOA

Service Virtualization: Managing Change in a Service-Oriented Architecture

Service-Oriented Architectures

Government's Adoption of SOA and SOA Examples

SOA Myth or Reality??

Service Governance and Virtualization For SOA

Service-Oriented Architecture and Software Engineering

Prerequisites for Successful SOA Adoption

Table of Contents. 1 Executive Summary SOA Overview Technology Processes and Governance... 8

An Oracle White Paper October Maximize the Benefits of Oracle SOA Suite 11g with Oracle Service Bus

The Way to SOA Concept, Architectural Components and Organization

1 What Are Web Services?

Federal Enterprise Architecture and Service-Oriented Architecture

Introduction to Service Oriented Architectures (SOA)

JOURNAL OF OBJECT TECHNOLOGY

JVA-561. Developing SOAP Web Services in Java

Tomáš Müller IT Architekt 21/04/2010 ČVUT FEL: SOA & Enterprise Service Bus IBM Corporation

SERVICE ORIENTED ARCHITECTURE

Enterprise Application Designs In Relation to ERP and SOA

How To Integrate With An Enterprise Service Bus (Esb)

Developing Java Web Services

SOA-14: Continuous Integration in SOA Projects Andreas Gies

SOA REFERENCE ARCHITECTURE: SERVICE TIER

Sentinet for BizTalk Server SENTINET

Presentation Outline. Key Business Imperatives Service Oriented Architecture Defined Oracle SOA Platform SOA Maturity/Adoption Model Demo Q&A

1 What Are Web Services?

Oracle Service Bus. Situation. Oracle Service Bus Primer. Product History and Evolution. Positioning. Usage Scenario

JOURNAL OF OBJECT TECHNOLOGY

Oracle SOA Reference Architecture

An Open Policy Framework for Cross-vendor Integrated Governance

Oracle SOA Suite: The Evaluation from 10g to 11g

WEB SERVICES. Revised 9/29/2015

Avoiding Web Services Chaos with WebSphere Service Registry and Repository

EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES. Enterprise Application Integration. Peter R. Egli INDIGOO.

How To Create A C++ Web Service

VALLIAMMAI ENGINEERING COLLEGE SRM NAGAR, KATTANKULATHUR DEPARTMENT OF COMPUTER APPLICATIONS SUBJECT : MC7502 SERVICE ORIENTED ARCHITECTURE

SOA CERTIFIED CONSULTANT

Advancing Integration Competency and Excellence with the WSO2 Integration Platform

SOA GOVERNANCE MODEL

Enterprise SOA Strategy, Planning and Operations with Agile Techniques, Virtualization and Cloud Computing

Service Oriented Architectures

Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies

Introduction to Service-Oriented Architecture for Business Analysts

Definition of SOA. Capgemini University Technology Services School Capgemini - All rights reserved November 2006 SOA for Software Architects/ 2

Enterprise Reference Architecture

SOA Best Practices (from monolithic to service-oriented)

Sentinet for BizTalk Server SENTINET 3.1

Developing SOA solutions using IBM SOA Foundation

A standards-based approach to application integration

JBOSS ENTERPRISE SOA PLATFORM AND JBOSS ENTERPRISE DATA SERVICES PLATFORM VALUE PROPOSITION AND DIFFERENTIATION

What You Need to Know About Transitioning to SOA

SOA and Cloud in practice - An Example Case Study

ORACLE MOBILE SUITE. Complete Mobile Development Solution. Cross Device Solution. Shared Services Infrastructure for Mobility

So You Want an SOA: Best Practices for Migrating to SOA in the Enterprise. Eric Newcomer, CTO

Technical Track Session Service-Oriented Architecture

Unlocking the Power of SOA with Business Process Modeling

SOA CERTIFIED JAVA DEVELOPER (7 Days)

Methods and tools for data and software integration Enterprise Service Bus

Glassbox: Open Source and Automated Application Troubleshooting. Ron Bodkin Glassbox Project Leader

ITS. Java WebService. ITS Data-Solutions Pvt Ltd BENEFITS OF ATTENDANCE:

Chapter 4. Architecture. Table of Contents. J2EE Technology Application Servers. Application Models

Service Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group. Tuesday June 12 1:00-2:15

Guiding Principles for Modeling and Designing Reusable Services

BEA AquaLogic Integrator Agile integration for the Enterprise Build, Connect, Re-use

WELCOME. Where and When should I use the Oracle Service Bus (OSB) Guido Schmutz. UKOUG Conference

Service Mediation. The Role of an Enterprise Service Bus in an SOA

MDM and Data Warehousing Complement Each Other

SOMA, RUP and RMC: the right combination for Service Oriented Architecture

Service-Oriented Architecture and its Implications for Software Life Cycle Activities

SOA Architect Certification Self-Study Kit Bundle

SONIC ESB 7. KEY CAPABILITIES > Connects, mediates and controls. KEY BENEFITS > Creates new processes using

Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery

Enterprise Application Integration (EAI) Architectures, Technologies, and Best Practices

Enterprise Integration EAI vs. SOA vs. ESB

AquaLogic ESB Design and Integration (3 Days)

Service Oriented Architecture 1 COMPILED BY BJ

FUSE-ESB4 An open-source OSGi based platform for EAI and SOA

Java Web Services Training

Ultimus Adaptive BPM Suite V8

Core J2EE Patterns, Frameworks and Micro Architectures

Integrating Siebel CRM 8 with Oracle Applications

Oracle SOA Suite Then and Now:

ESB solutions Title. BWUG & GSE Subtitle guy.crets@i8c.be. xx.yy@i8c.be

BUILDING FLEXIBLE ENTERPRISE PROCESSES USING ORACLE BUSINESS RULES AND BPEL PROCESS MANAGER. An Oracle White Paper Jan 2005

API Management Introduction and Principles

A Service-oriented Architecture for Business Intelligence

Oracle Business Activity Monitoring 11g New Features

Transcription:

SOA @ ebay : How is it a hit Sastry Malladi Distinguished Architect. ebay, Inc.

Agenda The context : SOA @ebay Brief recap of SOA concepts and benefits Challenges encountered in large scale SOA deployments How is ebay addressing these challenges The role of SOA governance Summary 2

The Context : SOA @ebay It s a journey! History One of the first to expose APIs /Services Support REST style as well as SOAP style Learned a lot from feedback from our customers and operational issues and evolved our technology over time Early adopters of SOA governance automation Continuously improving the architecture with the 3 goals in mind : Business Agility, Innovation and Operational Excellence Technology stack Mix of highly optimized home grown core SOA framework as well as best of breed commercial and open source components, integrated together Goals Organize the enterprise as a set of reusable business functions Reduce the cost of new features and applications Encourage and enable new business opportunities 3

Agenda The context : SOA @ebay Brief recap of SOA concepts and benefits Challenges encountered in large scale SOA deployments How is ebay addressing these challenges SOA governance and its role Summary 4

What is SOA? SOA is an Application Architecture evolution, not a Technology revolution SOA is an architecture to move from brittle, hardwired, application silos that inhibit change to shared, reusable, business and application services which eliminates application redundancy and complexity, and enable Business Agility, Innovation and Operational Excellence. 5

SOA - Not just technology Technology SOA Run-time stack Integrated tooling Infrastructure services Registry/Repository Routing SOA People Think SOA Promote Reuse Biz and IT alignment Training & Docs Process Life-cycle and governance Processes for Service Interface Approval, Security, change mgmt, etc. PDLC changes 6

Some common Misconceptions dispelled SOA is a new technology SOA implies Web Services and SOAP SOA is an end in itself It s a new architecture paradigm applied to existing or new technologies WS/SOAP is not an exclusive protocol. REST style with JSON, NV is equally popular, if not more. SOA is a means to enable business agility Services are always developed from ground up At service development time, its consumers/usecases are known Business always leverage existing functionality, but morph them into services and develop some new services on the way Service development may start with some usecases in mind, but they will evolve over a period of time 7

SOA model from 30,000 feet You already know! Decoupled Security Monitoring Service consumer Routing/ESB Data formats Message protocols Service provider Business rules Policy mgr Other.. G11N WSDL SOA Framework + policies Service Registry optional 8

SOA benefits Business Agility Faster time to market for new business offerings Quicker response to business change Easier integration with partners and third parties and adjacencies Innovation Enable internal and external Innovation Operational excellence Reduced cost for any new feature development by service re-use Efficient resource utilization Reduced cost of failure

SOA Benefits Enabling possibilities TODAY TOMMOROW FUTURE 10

Terminology Service Well defined piece of functionality, with a defined interface, with fully encapsulated business logic and data, that is managed and exposed consistently, and which is independent of any data formats and message protocols Data Binding/Format Also referred to as Wire format The format in which the data is represented on the wire (e.g XML, NV, JSON, BinaryXML,..) Message Protocol The protocol followed by the client and service when exchanging messages (e.g, SOAP). There need not be any message protocol present (especially when communicating with internal services) Transport protocol Protocol used at the transport level (e.g HTTP, SMTP) 11

Agenda The context : SOA @ebay Brief recap of SOA concepts and benefits Challenges encountered in large scale SOA deployments How is ebay addressing these challenges SOA governance and its role Summary 12

General SOA Challenges Technical Additional latencies due to multi-hop communications Debugging/Tracing is harder Need for efficient Request/Session level caching Increased Security and monitoring challenges Multiple, often competing standards Operational Developer adoption and learning curve Governance processes Migration of existing Apps Updates to existing tools and processes. Deployment and rollout Measurement of progress and ROI 13

Further challenges in large scale deployments Technical 14 Co-existence of old and new technologies during transition phase Supporting internal and external clients that have different protocols/data binding needs, for the same service deployment QoS and SLA management Integration testing High availability and Scalability high volume and low latency Decomposition of existing apps and migration of legacy services Operational Version and dependency management Impact to existing operational tools/environment Time to Market pressures Need for a strong yet simple governance process, especially with lots of services and the higher velocity of changes

Agenda The context : SOA @ebay Brief recap of SOA concepts and benefits Challenges encountered in large scale SOA deployments How is ebay addressing these challenges SOA governance and its role Summary 15

Addressing the challenges 16 Technical Light weight and high performant SOA platform (mix of home grown and commercial/open source components) Unified Testing framework and service virtualization Model-driven Service decomposition Support for REST style as well as SOAP style from the get go (i.e, support for flexibility of protocols/data formats) Operational Strong and yet flexible governance processes and life cycle management Automated through a service registry/repository Incremental service deployment Strong operational management tools Developer training and incentives for being a good citizen Formal process and tools to measure adoption and progress. Haven t yet formalized the ROI measurement however.

ebay SOA Platform Overview A comprehensive SOA Infrastructure platform Framework - Highly performant, extensible and light weight framework (overhead < 5 ms) Monitoring - A built in monitoring subsystem that is customizable Security XACML/WS-Policy based flexible and extensible authentication and authorization policies Rate Limiting - For enforcing capacity, budgeting and traffic control Service Registry and Repository Governance, life cycle management ESB - For routing, transformations and mediations Orchestration engine For orchestrating services and other components Tooling Developer tools (eclipse plugins) for service/consumer development, types management and error management Operational tools (management, monitoring and alerting) 17

SOA Framework - Highlights A declarative Pipeline based high performance architecture Request and Response decoupling Protocol and data binding agnostic service The same service instance can be invoked using multiple protocols and data formats No message normalizations or conversations Pluggable data formats Out of the box support for SOAP, REST, JSON, Binary XML Streaming and attachment support WSDL with SOAP and HTTP bindings Pluggable transports, including local binding Declarative, deployment time Local Binding option G11N, Versioning, Error management, QoS etc. 18

Model within the App Server G11N Logging Rate limiting QoS Synchronous & Asynchronous Light weight async connector O O O SPF Services Synchronous Servlet container O O O App level caching Security Monitoring 19

Pipeline architecture provider framework SPF Logging handler Global & Service Specific Config files Reads Auth handler G11N Outgoing response Incoming request 1 9 Framework servlet OR New tomcat connector 2 8 MCtx Server Message Processor 3 6 4 7 In Pipeline Out pipeline Request Disp 5 ServiceImpl Protocol specific (e.g SOAP) processors Resp disp Transport (de)serialization happens here if not already done 20

Pluggable data formats using JAXB Calls from handlers (pipeline) Or from Req/Resp dispatchers 1 (de)serialize (incoming)outgoing message (Request/Response) Message 5 Cache (de)serialized objects getserializer/ getdeserializer (based on the type) 2 3 (de)serializer factory XML NV JSON Binary XML 4 XML NV JSON Binary XML Others Others Pluggable (via config) Uniform JAXB based (de)serializers Stax parsers for each data format 21

Native and uniform (de)serialization Uniform interface Native serialization XML Pluggable formats JSON pipeline Ser/Deser module XML NV JSON others Directly deserialized into Java objects Passed to A single Instance of Service Impl NV SOA framework Other formats No intermediate format Avoids extra conversion 22

Pipeline Architecture Consumer Framework Logging Client App 1 10 SIF API 2 JAX-WS compliant 9 Client Specific Config file Reads Client Message Processor 3 4 7 8 Auth G11N Out Pipeline In pipeline Request Disp Resp disp 5 Transport factory 6 Local transport HTTP sync and async SMTP or others Pluggable transports Protocol specific processors (e.g SOAP) 23

Local Binding Logging Client Specific Config file Auth Client App 1 11 SIF API 2 JAX-WS Compliant 10 Reads Client Message Processor 3 8 9 4 G11 Out Pipeline In pipeline Request Disp Resp disp 5 Transport factory 6 7 Local transport Server Message Processor( in SPF) With Config optimizations Protocol specific processors (e.g SOAP) Processing is same from here after, as if its processed remotely. 24

Service Layers and Taxonomy Defining a finite set of service layers and their relationships Goals Provide a mechanism to build and layer services that have different characteristics Enable service lifecycle management for services with different scopes of impact Clearly establish rules on what functionality can be implemented in which layers Define allowed access patterns between layers Enable better dependency and rollout management 25

Our specific taxonomy (for example sake only) Application Layer Business Governance Intermediate/Core Common/Infrastructure 26 26

Integrated Tooling Developer tooling well integrated with Eclipse IDE Integration with the Service registry and governance processes. Dependencies are checked at design/development time itself Versioning and backward compatibilities are enforced Testing : Generation of tests and a mechanism to enforce successful running of the same Deployment tools Dependency checking and rollout in that order Rollback support Local Vs Remote binding Life-cycle management and change notifications Operational tooling Management and monitoring dashboard Alerting and SLA management Note : Some this is still work in progress 27

Agenda The context : SOA @ebay Brief recap of SOA concepts and benefits Challenges encountered in large scale SOA deployments How is ebay addressing these challenges SOA governance and its role Summary 28

What is SOA governance A set of activities related to exercising control over design, development and life-cycle of Service providers and Service consumers, for consistency manageability and for promoting re-use (subset of IT governance) Design time Interface and types design review and approval Enforcement of consistency guidelines for contract (interface, policies and behavior) Enforcement of dependency and layering guidelines Runtime Deployment policies Security/caching/monitoring/availability policies Reconciliation between what it is (runtime) and what it should be (design) Change management Dependency and impact analysis Versioning (both major and minor) of existing services Making sure existing subscribed clients don t break. Many industry vendors provide this product Not a very mature space however 29

SOA governance at ebay Service Repository Metadata management and life cycle management of services, data types and Consumers Automated Governance processes Dependency and Impact analysis Closed loop governance Service Registry A subset of the repository (without the governance process), light weight access, supports UDDI access Used for routing purposes Implementing SOA governance is crucial for success of our large scale deployments Note : Some of this is still work in progress. 30

Design time governance Defined a light weight, yet flexible process Both services and data types are managed and life cycled An automated workflow logic that that transitions the services through its life cycle states Formal interface (WSDL) and policy (Security, Rate Limiting, Availability) reviews and approvals Automated XQuery based assertions to validate WSDL guidelines Integrated with our SOA eclipse plugins for seamless developer experience Consumer governance to track and manage service consumers 31

Governance process - Sample Dev tools Service Registry and Repository Life cycle stages Build tools Deployment tools Publish/discover Proposed Approved Tested Deployed Notify Notify Notify Notify Release tools External governance process External Governance process External Governance process External Governance process 32

Runtime governance Monitor dependencies and policies at runtime Feed the runtime data into a reconciliation process that compares what it is Vs what it should be Address any discrepancies (closed loop governance) 33

Agenda The context : SOA @ebay Brief recap of SOA concepts and benefits Challenges encountered in large scale SOA deployments How is ebay addressing these challenges SOA governance and its role Summary 34

Summary Moving to SOA model certainly has its benefits, but brings along bigger challenges Solving the technology part is relatively easy. Operational aspects are more challenging and need to address them from the beginning Up front design and modeling of your contract/interface, including granularity is very important Service layering, dependency and version management must be well thought through Invest upfront on governance, Testing tools, and developer training ebay has been successfully able to apply this strategy and make progress in the SOA adoption journey. 35