Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Keynote-Service Orientation – Why is it good for your business


Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Keynote-Service Orientation – Why is it good for your business

  1. 1. Service OrientationWhy is it good for your business By Sastry Malladi eBay Inc
  2. 2. Overview Service Orientation Intro Different Service styles Challenges Case Study : eBay Recap 2
  3. 3. Fun facts about eBay  eBay manages …  Over 97 million active users  Over 2 Billion photos  eBay users worldwide trade on average $2000 in goods every second ($ 62 B in 2010)  eBay averages 4 billion page views per day  eBay has over 250 million items for sale in over 50,000 categories  eBay site stores over 5 Petabytes of data  eBay Analytics Infrastructure processes 80+ PB of data per day  eBay handles 40 billion API calls per month In 40+ countries, in 20+ languages, 24x7x365 >100 Billion SQL executions/day!
  4. 4. Service Orientation An architecture style to move from brittle, hardwired, application silos that inhibit change… … to shared, reusable, business and infrastructure components… … which eliminates application redundancy and complexity, and enable Business Agility, Innovation and Operational Excellence. 4
  5. 5. 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  The format in which the data is represented on the wire (e.g XML, NV, JSON, BinaryXML, ..) –a.k.a Wire Format Message Protocol  The protocol followed by the client and service when exchanging messages (e.g, SOAP). Transport protocol  Protocol used at the transport level (e.g HTTP, SMTP) 5
  6. 6. Services - Not just technologyTechnolo Services Process gyRun-time stackIntegrated tooling Domain modeling Life-cycle mgmtInfrastructure services GovernanceRegistry/Repository PDLC changesRouting People Think interfaces Promote Reuse Biz and IT alignment 6 Training & Docs
  7. 7. Some common Misconceptions dispelled SOA is a new technology  It’s an architecture paradigm applied to existing or new technologies SOA implies Web Services and SOAP  WS/SOAP is not an exclusive protocol. REST style with JSON, NV is more popular in the current days SOA/Services is an end in itself  SOA is a means to enable business agility Services are always developed from ground up  Business always leverage existing functionality, but morph them into services and develop some new services on the way At service development time, its consumers are known  Service development may start with some use cases in mind, but they will evolve over a period of time
  8. 8. Enabling possibilities TOMMOROWTODAY FUTURE 8
  9. 9. Services 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  Better developer productivity  Reduced cost of failure
  10. 10. Typical steps for Service orientingyour business Do the domain modeling for your enterprise Decompose domains into components Intersection between domains should be zero Assign owners and architects to domains Choose on Central Vs decentralized governance Get Business and Technology alignment Pick a technology stack, including tools for Dev, QE and Ops Train the developers Execute, track progress and course correct.
  11. 11. Overview Service Orientation : Benefits Different Service styles Challenges Case Study : eBay Recap 11
  12. 12. Different Service Styles• SOA • Formal Contract, interface (WSDL or other) • Transport / Protocol agnostic (bindings) • Arbitrary set of operations• REST • Based on Roy Fielding’s dissertation • Web/Resource oriented • Suits well for web based interactions • Piggy backs on HTTP verbs : GET, POST, PUT, DELETE • No formal contract
  13. 13. Overview Service Orientation : Benefits Different Service styles Challenges Case Study : eBay Recap 13
  14. 14. General 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 14
  15. 15. Further challenges in large scale deployments Technical  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  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  Time to Market pressures  Need for a strong yet simple governance process  QoS and SLA management 15
  16. 16. Overview Service Orientation : Benefits Different Service styles Challenges Case Study : eBay Recap 16
  17. 17. Services @eBay It’s a journey ! History  One of the first to expose APIs /Services  In early 2007, embarked on service orienting our entire ecommerce platform, whether the functionality is internal or external  Support REST style as well as SOA style  Have close to 300 services now and more on the way  Learned a lot from feedback from our customers and operational issues and evolved our technology and strategy over time  Early adopters of SOA governance automation 17
  18. 18. Services @eBay – Contd. Technology stack  Mix of highly optimized home grown framework components as well as best of breed commercial and open source components , integrated together – All standards based (WSDL, Http, JAX-WS, JAX-RS ..) 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
  19. 19. Addressing the challenges Technical  Policy driven Light weight and high performant Services platform  Model-driven Service decomposition  Support for REST and SOAP style from the get go  Unified Testing framework and service virtualization  Constantly evaluate and iterate over technology.. Operational  Simple and flexible governance processes and life cycle management, iterated over time  Strong operational management and monitoring tools  Developer training and incentives for being a good citizen  Formal process and tools to measure adoption and progress. 19
  20. 20. Services platform overview Dev/Arch Life cycle/dependency mgmtDesign/Dev Develop Services, consumers, Registry/ Eclipse Repository Dev tools Assertions Test tools svc Registry clients services SOA/REST client SOA/REST ServerRuntime Framework Framework External routing (ESB) Authentication Authorization RL Monitoring Logging Rest Mapping Admin console Policy service Monitoring console Tier 20
  21. 21. A word on ESB• Decouple of service consumers from service producers: • Routing and transformation • Support QoS • Minimal latency overhead and high scalabilty• Evaluated various products and selected WSO2 ESB • It rocks !• It processes more than 1B messages per day ! 21
  22. 22. 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 guidelines on what functionality can be implemented in which layers  Define allowed access patterns between layers  Enable better dependency and rollout management 22
  23. 23. Our specific taxonomy Application Layer Business controlled Intermediate/Core d le tr ol Common/Infrastructure conOK 23 23
  24. 24. What is Service 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 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. 24
  25. 25. Governance process - SampleDev tools Service Registry and Repository Life cycle stages Publish/discover Proposed Approved Tested Deployed Build toolsDeployment Notify Notify Notify Notify tools Release tools External External External External governance Governance Governance Governance process process process process 25
  26. 26. Governance – Our journey We initially had an elaborate governance process After feedback from developers, we iterated and eliminated this and made it a self service process  Validation and Reporting Data from this repository is exported to runtime ESB registry and SIF. 26
  27. 27. Tracking Adoption Ref : Wikipedia After domain decomposition into services, need to set goals and closely track Adoption – at least until you cross the “chasm” Formulas for tracking adoption index and ROI One yardstick – 3 uses of a service is break even, anything more is bonus
  28. 28.  eBay has been a strong supporter of Open Source model and community Recently created  Mission is to open source some of the best of breed technologies that were developed originally within eBay Inc.  For the benefit of the community  Under a liberal open source license.  These projects are generic technology projects and several years of development effort has gone into them to mature them.  Most parts of our services platform, code named Turmeric, is open sourced on this site. 28
  29. 29. Recap Moving to Services 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 Restful Services is where the industry is headed. 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 developer training, Testing tools, and some form of governance eBay has been successfully able to apply this strategy and make progress in our service orientation journey. 29
  30. 30. Q&A