• Save
Turmeric soa symposium_v1.0
Upcoming SlideShare
Loading in...5
×
 

Turmeric soa symposium_v1.0

on

  • 1,771 views

Turmeric is an Open Source Policy-Driven SOA platform, it was shared at 4th International SOA Symposium in Brazil

Turmeric is an Open Source Policy-Driven SOA platform, it was shared at 4th International SOA Symposium in Brazil

Statistics

Views

Total Views
1,771
Views on SlideShare
1,730
Embed Views
41

Actions

Likes
1
Downloads
0
Comments
0

5 Embeds 41

https://www.ebayopensource.org 34
http://www.ebayopensource.org 4
http://www.linkedin.com 1
http://www.docshut.com 1
https://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • This template should be used for projects that are going through JAD and ARB. There should only be one .ppt file created for any project. The same .ppt should be updated as the project progresses through JAD and ARB. Slides that are not longer relevant should be moved to the end of the presentation. The updated file should be checked in to the VOB ebayv3docs \\ARB\\presentations\\2004\\ (date should no longer be included in the name) There are four types of presentation objectives: “ JAD Session” “ Informational ARB” presentations can be used to inform ARB about technical issues, vendor information, strategies, etc. “ ARB Control” presentations are for designated projects that are working through design issues in multiple ARB sessions “ Approval Request” presentations are for projects that have resolved all issues and are requesting approval of the architecture approach If you are seeking approval and the approval can be broken down to specific parts of the design you should clearly indicate the different pieces you are seeking approval on

Turmeric soa symposium_v1.0 Turmeric soa symposium_v1.0 Presentation Transcript

  • 4 th International SOA Symposium Alvarez Muguerza, José Brasilia, 04.28.2011
    • Context
    • What is Turmeric?
    • Turmeric Core
    • Other Key Features
    • Short HOW-TO
    • Summary
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil Agenda
  • Agenda
    • Context
    • What is Turmeric?
    • Turmeric Core
    • Other Key Features
    • Short HOW-TO
    • Summary
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Context: eBay José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil More than 100 million of active users, eBay's marketplace manages millions of daily retails transactions in almost 30 countries around the world.
  • Context: SOA @eBay
    • Context
      • One of the first to expose APIs Services
      • Support SOAP style as well as REST style
      • Learned a lot from feedback from their customers and operational issues and evolved our technology over time
      • Early adopters of SOA governance automation
      • Continuously improving their architecture
    • Principles and Goals
      • Organize the enterprise as a set of reusable business functions
      • Reduce the cost of new features and applications
      • Business Agility
      • Innovation
      • Operational Excellence
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Context: Open Source
    • 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.
    • Turmeric's turn
    • Why Intalio?
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Agenda
    • Context
    • What is Turmeric?
    • Turmeric Core
    • Other Key Features
    • Short HOW-TO
    • Summary
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
    • Comprehensive Policy-Driven SOA platform
    • Highly Performance Scalable
    • Client side and server side runtime
    • Can be used to develop, deploy, secure, monitor, and govern SOA services and consumers
    • Follows the standards SOAP, XML, JSON, XACML, etc.
    • Pipeline based architecture
    • Various Quality of Service (QoS) features provided through services (Authentication, Authorization, and rate limiting, which you control by defining respective policies.)
    • Monitoring and Policy Admin console
    Turmeric Platform José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric Platform José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Agenda
    • Context
    • What is Turmeric?
    • Turmeric Core
    • Other Key Features
    • Short HOW-TO
    • Summary
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Core
    • Pipeline based architecture
    • Request and Response decoupling.
    • Binding Framework
    • Pluggable transports, including local binding
    • G11N, Error management, QoS etc.
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Core
    • Pipeline based architecture
    • Request and Response decoupling.
    • Binding Framework
    • Pluggable transports, including local binding
    • G11N, Error management, QoS etc.
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Core José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil Framework servlet OR New tomcat connector Server Message Processor In Pipeline Reads Request Disp ServiceImpl Out pipeline MCtx Incoming request Logging handler Auth handler Resp disp Outgoing response G11N Global & Service Specific Config files 1 2 3 4 5 6 7 8 9 Protocol specific (e.g SOAP) processors Transport (de)serialization happens here if not already done SPF
  • Turmeric: Core
    • Pipeline based architecture
    • Request and Response decoupling.
    • Binding Framework
    • Pluggable transports, including local binding
    • G11N, Error management, QoS etc.
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Core
    • Pipeline based architecture
    • Request and Response decoupling
    • Binding Framework
    • Pluggable transports, including local binding
    • G11N, Error management, QoS etc.
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Custom Data Formats - JAXB José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil (de)serializer factory (Request/Response) Message Cache (de)serialized objects Calls from handlers (pipeline) Or from Req/Resp dispatchers XML NV JSON Binary XML Stax parsers for each data format Others (de)serialize (incoming)outgoing message getSerializer/ getDeserializer (based on the type) XML NV JSON Binary XML Others Pluggable (via config) Uniform JAXB based (de)serializers 1 2 3 4 5
  • Native (de)serialization XML Other formats JSON NV A single Instance of Service Impl Java objects Passed to pipeline XML NV JSON Directly deserialized into SOA framework others Ser/Deser module Uniform interface Native serialization No intermediate format Avoids extra conversion Pluggable formats José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Core
    • Pipeline based architecture
    • Request and Response decoupling
    • Binding Framework
    • Pluggable transports, including local binding
    • G11N, Error management, QoS etc.
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Local Binding José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil Client Message Processor Out Pipeline Reads Request Disp In pipeline Logging Auth Resp disp 9 3 4 5 7 8 6 G11N Client Specific Config file Transport factory Local transport HTTP sync and async SMTP or others Client App SIF API 2 1 10 Protocol specific processors (e.g SOAP) Pluggable transports JAX-WS compliant
  • Turmeric: Core
    • Pipeline based architecture
    • Request and Response decoupling
    • Binding Framework
    • Pluggable transports, including local binding
    • G11N, Error management, QoS etc.
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Agenda
    • Context
    • What is Turmeric?
    • Turmeric Core
    • Other Key Features
    • Short HOW-TO
    • Summary
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Other Key Features
    • Policy Admin console
    • Type Library
    • Error Library
    • Repository Service
    • Security
    • Monitoring
    • Eclipse Plugins and Dev Tools
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Policy Admin console
    • Entities:
      • Resources
      • Subjects (App, Ip, Dev, User)
      • Subject Groups
      • Rules
      • Policies
    • Policy Types
      • Authorization
      • Black List
      • White List
      • Rate Limiting
    • Import & Export features
    • Change History View
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Policy Admin console José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Monitoring console José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Eclipse Plugins José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Agenda
    • Context
    • What is Turmeric?
    • Turmeric Core
    • Other Key Features
    • Short HOW-TO
    • Summary
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Eclipse Dev Tools José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil Short HOW-TO Create a Turmeric Consumer WS
  • Turmeric: Eclipse Dev Tools José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil 1) File > New Turmeric WS Consumer
  • Turmeric: Eclipse Dev Tools José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil 2) Select the WSDL
  • Turmeric: Eclipse Dev Tools José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Turmeric: Eclipse Dev Tools José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil ClientConfig.xml <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?> <client-config-list xmlns=&quot;http://www.ebayopensource.org/turmeric/common/config&quot;> <client-config> <service-interface-class-name>com.ebay.marketplace.search.v1.services.findingservice.FindingServiceV1 </service-interface-class-name> <service-location>http://svcs.sandbox.ebay.com/services/search/FindingService/v1 </service-location> <client-instance-config> <invocation-options> <preferred-transport name=&quot;HTTP11&quot; /> <request-data-binding>XML</request-data-binding> <response-data-binding>XML</response-data-binding> <invocation-use-case>FindingServiceV1Client</invocation-use-case> </invocation-options> <transport name=&quot;HTTP11&quot;> <class-name> org.ebayopensource.turmeric.runtime.sif.impl.transport.http.HTTPSyncAsyncClientTransport </class-name> <header-options> <option name=&quot;X-EBAY-SOA-OPERATION-NAME&quot;>findItemsByKeywords</option> <option name=&quot;X-EBAY-SOA-SECURITY-APPNAME&quot;>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</option> </header-options> <default-options> <socket-connect-timeout-msec>50000</socket-connect-timeout-msec> <socket-read-timeout-msec>50000</socket-read-timeout-msec> <invocation-timeout-msec>50000</invocation-timeout-msec> </default-options> </transport> </client-instance-config> </client-config> </client-config-list>
  • Turmeric: Eclipse Dev Tools José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil Synchronous Invocation Asynchronous Invocation
  • Turmeric: Eclipse Dev Tools José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil 3) Set Invoker parameters - (optional)
  • Turmeric: Eclipse Dev Tools José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil 4) just Run It... public static void main(String[] args) { FindItemsByKeywordsRequest req = new FindItemsByKeywordsRequest(); req.setKeywords(&quot;phone&quot;); try { FindItemsByKeywordsResponse res = new FindingServiceV1Consumer(&quot;FindingServiceV1Consumer&quot;, &quot;sandbox&quot;).findItemsByKeywords(req); if(res.getSearchResult()!=null && res.getSearchResult().getItem().size()>0){ for (SearchItem item : res.getSearchResult().getItem()) { System.out.println(item.getTitle()); } } } catch (ServiceException e) { e.printStackTrace(); } } and the response is: New unlocked FM mini Iphone KA09 GSM AT&T T-Mobile Cell LG Chocolate Touch VX8575 Verizon Retail Box Cell Phone New unlocked Iphone K06 3G Verizon Cell … .......
  • Agenda
    • Context
    • What is Turmeric?
    • Turmeric Core
    • Other Key Features
    • Short HOW-TO
    • Summary
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil
  • Summary
      • Call to Action
        • Project Home: https://www.ebayopensource.org/index.php/Turmeric/HomePage
        • Forum :
        • https://www.ebayopensource.org/forum/
        • IRC:
        • irc://irc.freenode.net Channels : #turmeric and #turmeric-dev
    José Alvarez Muguerza / 4 th SOA Symposium – 04.28.2011, Brasilia - Brasil