SlideShare a Scribd company logo
1 of 13
Mashup Services – Overview




© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM   1
MASHUP SERVICES

• Problems of directly using content
    -   Access problems, i.e. same origin policy

    -   Content problems, i.e. adaptation, transformations, filtering

    -   Performance problems – i.e. unreliable, legacy, slow connections

• Mashup Services solve these problems



© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
MASHUP SERVICE

• Mashup Service = Proxy Transform Caching
     • Note: Internally called PTC
• Proxy
  • overcoming security restriction on network connections
• Transformation
  • requests and responses are filtered and transformed for
    data consumers, such as Rich Portal widgets
  • based on the concept of pipe
             • a chain of processing elements arranged so that the output of
               each element is the input of the next
• Caching
  • improve performance
© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM   3
FEATURES OF THE MASHUP SERVICE

• Proxy
  - Proxy to Remote Resources
  - Build-in data provider for GET and POST requests
  - Custom Data Providers
• Transformation
  - Any kind of transformation (XSLT out of the box, velocity
    or others are possible)
  - Ability to transform both requests and responses
  - Custom Transformations
• Caching
  - Based on eh-cache
  - Possible to share cache settings across pipes
© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM   4
MASHUP SERVICES
                                                                                             Remote Server

        Browser
   Portal Client Page




                                                                                                                            Backbase
                                                                                                                         Portal Server

                                                                                                   data provider



                                                                                             transform         filter



                                                                                              filters        transform




                                                                                                        Pipe
                                                                                                                            Cache


                                                                                                  Mashup Services



© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
DEPLOYMENT OPTIONS

• There are 2 deployment options for Mashup Service
    - Embedded
        • A part of the portal server project
    - Standalone
        • Separate from a portal server
        • Can be shared by several portal servers

© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
EMBEDDED
MASHUP SERVICES                                                                              Remote Server

        Browser
   Portal Client Page




                                                                                                                Backbase
                                                                                                                   Portal
                                                                                                                   Server




                                                                              Internal
                                                                            Portal Proxy




                                                                                              Mashup Services



© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
STANDALONE
MASHUP SERVICES                                                                              Remote Server

        Browser
   Portal Client Page



       AJAX Code
         Forms




                                                               Backbase
                                                                   Portal
                                                            Backbase
                                                                  Server
                                                                Portal
                                                          Backbase
                                                               Server
                                                             Portal
                                                             Server



                                                                                             Standalone Mashup
                             Internal                                                             Services
                           Portal Proxy




© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
PIPE

• A central concept of Mashup Service
• Pipe: “a chain of processing elements arranged so
  that the output of each element
  is the input of the next”




© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM   9
PIPE
                                                                                             Remote Server

        Browser
                                                                                                                            By default, data provider is
   Portal Client Page                                                                                                            an HTTP Client,
                                                                                                                                can be customized




                                                                                                                            Backbase
                                                                                                                         Portal Server

                                                                                                   data provider



                                                                                             transform         filter



                                                                                              filters        transform




                                                                                                        Pipe
                                                                                                                            Cache


                                                                                                  Mashup Services



© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
MASHUP: PIPE CONFIGURATION

• resources/ptc-config.xml
• The “pipe” tag matches requests to configurations
• The configuration of each pipe includes the following:
    - Multiple request and response Filters
    - Multiple request and response Transformers
    - Caching (pipe-specific OR shared among many pipes)
    - Data provider (pipe-specific OR shared among many pipes)
• Pipes match top to bottom




© BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM   11
PIPE CONFIGURATION (cont.)
                          request
Mashup




   © BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM   12
EXAMPLES OF SIMPLE PIPE CONFIGURATIONS


<pipe name="simplestPipe"/>
         http://localhost:7777/portalserver/proxy?pipe=simplestPipe&url=http://www.backbase.com



<pipe name="rssPipe">
  <response-transform>
     <transform class=“c.b.p.p.t.r.i.XSLTTransformer">
        <param name="xsltFile" value="/WEB-INF/xslt/rss/rss2xhtml.xsl" />
        <param name="cacheXSLFile" value="false" />
     </transform>
  </response-transform>
</pipe>


  © BACKBASE   / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM

More Related Content

What's hot

Microsoft Exchange 2013 architecture
Microsoft Exchange 2013 architectureMicrosoft Exchange 2013 architecture
Microsoft Exchange 2013 architectureMotty Ben Atia
 
Funtional Web Service Composition
Funtional Web Service CompositionFuntional Web Service Composition
Funtional Web Service CompositionRohit Kumar Gupta
 
Mule concepts components
Mule concepts componentsMule concepts components
Mule concepts componentskunal vishe
 
(ATS4-DEV10) Creating Pipeline Pilot Components by Wrapping Third-Party Tools
(ATS4-DEV10) Creating Pipeline Pilot Components by Wrapping Third-Party Tools(ATS4-DEV10) Creating Pipeline Pilot Components by Wrapping Third-Party Tools
(ATS4-DEV10) Creating Pipeline Pilot Components by Wrapping Third-Party ToolsBIOVIA
 
(ATS4-PLAT09) Kerberos & SAML with Accelrys Enterprise Platform 9.0
(ATS4-PLAT09) Kerberos & SAML with Accelrys Enterprise Platform 9.0(ATS4-PLAT09) Kerberos & SAML with Accelrys Enterprise Platform 9.0
(ATS4-PLAT09) Kerberos & SAML with Accelrys Enterprise Platform 9.0BIOVIA
 
MSB to Support Carrier Grade ONAP Microservice Architecture with Service Mesh
MSB to Support Carrier Grade ONAP Microservice Architecture with Service MeshMSB to Support Carrier Grade ONAP Microservice Architecture with Service Mesh
MSB to Support Carrier Grade ONAP Microservice Architecture with Service MeshHuabing Zhao
 
Mule esb whole_web_services
Mule esb whole_web_servicesMule esb whole_web_services
Mule esb whole_web_servicesNaresh Naidu
 
Flume and Flive Introduction
Flume and Flive IntroductionFlume and Flive Introduction
Flume and Flive IntroductionHanborq Inc.
 
Syer Monitoring Integration And Batch
Syer Monitoring Integration And BatchSyer Monitoring Integration And Batch
Syer Monitoring Integration And BatchDave Syer
 

What's hot (11)

Microsoft Exchange 2013 architecture
Microsoft Exchange 2013 architectureMicrosoft Exchange 2013 architecture
Microsoft Exchange 2013 architecture
 
Funtional Web Service Composition
Funtional Web Service CompositionFuntional Web Service Composition
Funtional Web Service Composition
 
Mule concepts components
Mule concepts componentsMule concepts components
Mule concepts components
 
(ATS4-DEV10) Creating Pipeline Pilot Components by Wrapping Third-Party Tools
(ATS4-DEV10) Creating Pipeline Pilot Components by Wrapping Third-Party Tools(ATS4-DEV10) Creating Pipeline Pilot Components by Wrapping Third-Party Tools
(ATS4-DEV10) Creating Pipeline Pilot Components by Wrapping Third-Party Tools
 
(ATS4-PLAT09) Kerberos & SAML with Accelrys Enterprise Platform 9.0
(ATS4-PLAT09) Kerberos & SAML with Accelrys Enterprise Platform 9.0(ATS4-PLAT09) Kerberos & SAML with Accelrys Enterprise Platform 9.0
(ATS4-PLAT09) Kerberos & SAML with Accelrys Enterprise Platform 9.0
 
Imap connector
Imap connectorImap connector
Imap connector
 
MSB to Support Carrier Grade ONAP Microservice Architecture with Service Mesh
MSB to Support Carrier Grade ONAP Microservice Architecture with Service MeshMSB to Support Carrier Grade ONAP Microservice Architecture with Service Mesh
MSB to Support Carrier Grade ONAP Microservice Architecture with Service Mesh
 
Mule esb whole_web_services
Mule esb whole_web_servicesMule esb whole_web_services
Mule esb whole_web_services
 
Flume and Flive Introduction
Flume and Flive IntroductionFlume and Flive Introduction
Flume and Flive Introduction
 
Syer Monitoring Integration And Batch
Syer Monitoring Integration And BatchSyer Monitoring Integration And Batch
Syer Monitoring Integration And Batch
 
10 fn s40
10 fn s4010 fn s40
10 fn s40
 

Similar to Mashup Services Overview

Memcached, presented to LCA2010
Memcached, presented to LCA2010Memcached, presented to LCA2010
Memcached, presented to LCA2010Mark Atwood
 
Pivotal CRM 6.0 Administration
Pivotal CRM 6.0 AdministrationPivotal CRM 6.0 Administration
Pivotal CRM 6.0 AdministrationAptean
 
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL RoutingBIOVIA
 
Managing your Hadoop Clusters with Ambari
Managing your Hadoop Clusters with AmbariManaging your Hadoop Clusters with Ambari
Managing your Hadoop Clusters with AmbariDataWorks Summit
 
Introduction to the Azure Service Bus EAI & EDI featuresiedi features
Introduction to the Azure Service Bus EAI & EDI featuresiedi featuresIntroduction to the Azure Service Bus EAI & EDI featuresiedi features
Introduction to the Azure Service Bus EAI & EDI featuresiedi featuresSandro Pereira
 
Web services for remote portlets v01
Web services for remote portlets v01Web services for remote portlets v01
Web services for remote portlets v01prabakaranbrick
 
Davivienda - Exceptional Web Experiences
Davivienda - Exceptional Web ExperiencesDavivienda - Exceptional Web Experiences
Davivienda - Exceptional Web ExperiencesDjalma Britto
 
Optaros Surf Code Camp Introduction
Optaros Surf Code Camp IntroductionOptaros Surf Code Camp Introduction
Optaros Surf Code Camp IntroductionJeff Potts
 
VSC Wholesale &amp; Retail Softswitch
VSC Wholesale &amp; Retail SoftswitchVSC Wholesale &amp; Retail Softswitch
VSC Wholesale &amp; Retail Softswitchmytlaw
 
Oracle apps architecture
Oracle apps architectureOracle apps architecture
Oracle apps architectureVineet Kumar
 
Google App Engine At A Glance
Google App Engine At A GlanceGoogle App Engine At A Glance
Google App Engine At A GlanceStefan Christoph
 
Interoperability Ms Sap
Interoperability Ms SapInteroperability Ms Sap
Interoperability Ms Sapricharoy
 
The Java EE 7 Platform: Developing for the Cloud
The Java EE 7 Platform: Developing for the CloudThe Java EE 7 Platform: Developing for the Cloud
The Java EE 7 Platform: Developing for the CloudArun Gupta
 
Shared personalization service. How to scale to 15 k rps (Patrice Pelland)
Shared personalization service. How to scale to 15 k rps (Patrice Pelland)Shared personalization service. How to scale to 15 k rps (Patrice Pelland)
Shared personalization service. How to scale to 15 k rps (Patrice Pelland)Ontico
 
ECM Technical Solution
ECM Technical SolutionECM Technical Solution
ECM Technical SolutionThanh Nguyen
 

Similar to Mashup Services Overview (20)

Memcached, presented to LCA2010
Memcached, presented to LCA2010Memcached, presented to LCA2010
Memcached, presented to LCA2010
 
Pivotal CRM 6.0 Administration
Pivotal CRM 6.0 AdministrationPivotal CRM 6.0 Administration
Pivotal CRM 6.0 Administration
 
VO Course 04: VO architecture
VO Course 04: VO architectureVO Course 04: VO architecture
VO Course 04: VO architecture
 
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
 
Managing your Hadoop Clusters with Ambari
Managing your Hadoop Clusters with AmbariManaging your Hadoop Clusters with Ambari
Managing your Hadoop Clusters with Ambari
 
Orange is v cloud 3
Orange is v cloud 3Orange is v cloud 3
Orange is v cloud 3
 
Got ipads, android tablets and windows devices
Got ipads, android tablets and windows devicesGot ipads, android tablets and windows devices
Got ipads, android tablets and windows devices
 
Introduction to the Azure Service Bus EAI & EDI featuresiedi features
Introduction to the Azure Service Bus EAI & EDI featuresiedi featuresIntroduction to the Azure Service Bus EAI & EDI featuresiedi features
Introduction to the Azure Service Bus EAI & EDI featuresiedi features
 
Web services for remote portlets v01
Web services for remote portlets v01Web services for remote portlets v01
Web services for remote portlets v01
 
Davivienda - Exceptional Web Experiences
Davivienda - Exceptional Web ExperiencesDavivienda - Exceptional Web Experiences
Davivienda - Exceptional Web Experiences
 
Optaros Surf Code Camp Introduction
Optaros Surf Code Camp IntroductionOptaros Surf Code Camp Introduction
Optaros Surf Code Camp Introduction
 
Orange is v cloud 3
Orange is v cloud 3Orange is v cloud 3
Orange is v cloud 3
 
VSC Wholesale &amp; Retail Softswitch
VSC Wholesale &amp; Retail SoftswitchVSC Wholesale &amp; Retail Softswitch
VSC Wholesale &amp; Retail Softswitch
 
Oracle apps architecture
Oracle apps architectureOracle apps architecture
Oracle apps architecture
 
Orange is v cloud 3
Orange is v cloud 3Orange is v cloud 3
Orange is v cloud 3
 
Google App Engine At A Glance
Google App Engine At A GlanceGoogle App Engine At A Glance
Google App Engine At A Glance
 
Interoperability Ms Sap
Interoperability Ms SapInteroperability Ms Sap
Interoperability Ms Sap
 
The Java EE 7 Platform: Developing for the Cloud
The Java EE 7 Platform: Developing for the CloudThe Java EE 7 Platform: Developing for the Cloud
The Java EE 7 Platform: Developing for the Cloud
 
Shared personalization service. How to scale to 15 k rps (Patrice Pelland)
Shared personalization service. How to scale to 15 k rps (Patrice Pelland)Shared personalization service. How to scale to 15 k rps (Patrice Pelland)
Shared personalization service. How to scale to 15 k rps (Patrice Pelland)
 
ECM Technical Solution
ECM Technical SolutionECM Technical Solution
ECM Technical Solution
 

Mashup Services Overview

  • 1. Mashup Services – Overview © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM 1
  • 2. MASHUP SERVICES • Problems of directly using content - Access problems, i.e. same origin policy - Content problems, i.e. adaptation, transformations, filtering - Performance problems – i.e. unreliable, legacy, slow connections • Mashup Services solve these problems © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
  • 3. MASHUP SERVICE • Mashup Service = Proxy Transform Caching • Note: Internally called PTC • Proxy • overcoming security restriction on network connections • Transformation • requests and responses are filtered and transformed for data consumers, such as Rich Portal widgets • based on the concept of pipe • a chain of processing elements arranged so that the output of each element is the input of the next • Caching • improve performance © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM 3
  • 4. FEATURES OF THE MASHUP SERVICE • Proxy - Proxy to Remote Resources - Build-in data provider for GET and POST requests - Custom Data Providers • Transformation - Any kind of transformation (XSLT out of the box, velocity or others are possible) - Ability to transform both requests and responses - Custom Transformations • Caching - Based on eh-cache - Possible to share cache settings across pipes © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM 4
  • 5. MASHUP SERVICES Remote Server Browser Portal Client Page Backbase Portal Server data provider transform filter filters transform Pipe Cache Mashup Services © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
  • 6. DEPLOYMENT OPTIONS • There are 2 deployment options for Mashup Service - Embedded • A part of the portal server project - Standalone • Separate from a portal server • Can be shared by several portal servers © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
  • 7. EMBEDDED MASHUP SERVICES Remote Server Browser Portal Client Page Backbase Portal Server Internal Portal Proxy Mashup Services © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
  • 8. STANDALONE MASHUP SERVICES Remote Server Browser Portal Client Page AJAX Code Forms Backbase Portal Backbase Server Portal Backbase Server Portal Server Standalone Mashup Internal Services Portal Proxy © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
  • 9. PIPE • A central concept of Mashup Service • Pipe: “a chain of processing elements arranged so that the output of each element is the input of the next” © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM 9
  • 10. PIPE Remote Server Browser By default, data provider is Portal Client Page an HTTP Client, can be customized Backbase Portal Server data provider transform filter filters transform Pipe Cache Mashup Services © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM
  • 11. MASHUP: PIPE CONFIGURATION • resources/ptc-config.xml • The “pipe” tag matches requests to configurations • The configuration of each pipe includes the following: - Multiple request and response Filters - Multiple request and response Transformers - Caching (pipe-specific OR shared among many pipes) - Data provider (pipe-specific OR shared among many pipes) • Pipes match top to bottom © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM 11
  • 12. PIPE CONFIGURATION (cont.) request Mashup © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM 12
  • 13. EXAMPLES OF SIMPLE PIPE CONFIGURATIONS <pipe name="simplestPipe"/> http://localhost:7777/portalserver/proxy?pipe=simplestPipe&url=http://www.backbase.com <pipe name="rssPipe"> <response-transform> <transform class=“c.b.p.p.t.r.i.XSLTTransformer"> <param name="xsltFile" value="/WEB-INF/xslt/rss/rss2xhtml.xsl" /> <param name="cacheXSLFile" value="false" /> </transform> </response-transform> </pipe> © BACKBASE / CUSTOMER EXPERIENCE SOLUTIONS / JACOB BONTIUSPLAATS 9 / 1018 LL / AMSTERDAM