Microservices = Death of the Enterprise Service Bus (ESB)?

20,748 views

Published on

Microservices are the next step after SOA: Services implement a limited set of functions. Services are developed, deployed and scaled independently. Continuous Integration and Continuous Delivery control deployments. This way you get shorter time to results and increased flexibility.
Microservices have to be independent regarding build, deployment, data management and business domains. A solid Microservices design requires single responsibility, loose coupling and a decentralized architecture. A Microservice can to be closed or open to partners and public via APIs.
This session discusses the requirements, best practices and challenges for creating a good Microservices architecture, and if this spells the end of the Enterprise Service Bus (ESB).
Key messages of the talk:
• Microservices = SOA done right

• Integration is key for success – the product name does not matter
• Real time event correlation is the game changer

Published in: Technology
2 Comments
62 Likes
Statistics
Notes
  • Could you please make it downloadable
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Interesting to see how product vendors can "twist" a domain based architecture approach such as microservices into another "integration" story. This is exactly what happened to SOA, making it "SOI" and finally led to its early demise. I am seeing the same thing happening for microservices as well.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
20,748
On SlideShare
0
From Embeds
0
Number of Embeds
9,298
Actions
Shares
0
Downloads
0
Comments
2
Likes
62
Embeds 0
No embeds

No notes for slide

Microservices = Death of the Enterprise Service Bus (ESB)?

  1. 1. Microservices = Death of the ESB ?! Kai Wähner kwaehner@tibco.com @KaiWaehner www.kai-waehner.de LinkedIn / Xing à Please connect!
  2. 2. Key Messages –  Microservices = SOA done right! –  Integration is key for success – the product name does not matter! –  Real time event correlation is the game changer!
  3. 3. Agenda –  Digitalization –  Enterprise Service Bus –  Microservices –  Architecture and Requirements –  Challenges
  4. 4. Agenda –  Digitalization –  Enterprise Service Bus –  Microservices –  Architecture and Requirements –  Challenges
  5. 5. Everything is connected and generates a lot of data © Copyright 2000-2015 TIBCO Software Inc.
  6. 6. New Applications, New Requirements •  Purposeful: Users are looking for tools not toolboxes. •  Adaptable: Similar application services can be consumed via a variety of channels, in a variety of contexts. •  Sustainable: Applications services need to support user experience by combining performance and flexibility © Copyright 2000-2015 TIBCO Software Inc.
  7. 7. © Copyright 2000-2013 TIBCO Software Inc. “Applications created today using the good-old traditional architecture will be a business-constraining legacy before they are completed.” Yefim Natis, Software Defined Applications Webinar, May 8th 2015 Too Slow, Too Complex
  8. 8. Agenda –  Digitalization –  Enterprise Service Bus –  Microservices –  Architecture and Requirements –  Challenges
  9. 9. Integration is key for success! Integration will get even more important in the future than it is today! The number of different data sources and technologies increases even more than in the past CRM, ERP, Host, B2B, etc. will not disappear DWH, Hadoop cluster, event / streaming server, In-Memory DB – all of them have to communicate Cloud, Mobile, APIs, Big Data, Internet of Things are no option, but our future! EVERYTHING HAS TO BE INTEGRATED!
  10. 10. Evolution of Integration Microservices   Web  APIs   Real-­‐3me   Web     Oriented     Architecture   Enabling  Technologies   In-­‐Memory,  Mul3core   REST,  JSON   Demand  Drivers   Mobile,  Cloud   Fast  Data,  IoT   Services     Web  Services   Real-­‐3me   Service     Oriented   Architecture   Enabling  Technologies   XML,  SOAP,  WS-­‐*   Process  Modeling   Demand  Drivers   E-­‐Commerce   BPM   Interfaces   Adapters   Real-­‐3me   Enterprise     Applica3on   Integra3on     Enabling  Technologies   Client-­‐Server   Messaging  Middleware   Demand  Drivers   ERP   Analy3cs   Records   Batch  Jobs   Non-­‐real3me   Enabling  Technologies   Mainframe   ETL,  Databases   Data   Integra3on   Demand  Drivers   Data  Processing   MIS   Are  we   there  yet?   Level-­‐Up  by     u2lizing  the   lessons,   assets  and   prac2ces  of   the  previous   Level     Accelera2ng  Produc2vity  &    Agility    
  11. 11. Acting in Real Time gets more and more important! Time Business Value Business Event Data Ready for Analysis Analysis Completed Decision Made $$$$ $$$ $$ $ Action Taken Event Processing speeds action and increases business value by seizing opportunities while they matter
  12. 12. 12 Branding of Integration Software © Copyright 2000-2015 TIBCO Software Inc. •  Keywords PAST: Application Integration, EAI, Broker, Application, Integration, Enterprise, Hub and Spoke, Backbone, Scalability, Platform, Batch •  Keywords PRESENT: Service Integration, Bus, SOA, Service, ESB, Flexibility, Distribution, Events, EDA, Real Time, Event Correlation, Open, Standards, Extensibility •  Keywords FUTURE: Integration of Everything, Cloud, IoT, Gateway, Microservice, API, Public Independence, Continuous Delivery, Self-Service, Prediction, In-Memory
  13. 13. 13 TIBCO Branding © Copyright 2000-2015 TIBCO Software Inc. TIBCO     offers  middleware  for  mission-­‐cri3cal  real  3me     Integra3on  and  Event  Processing     for  20+  Years…  
  14. 14. 14 TIBCO Website (Year 2000) © Copyright 2000-2015 TIBCO Software Inc.
  15. 15. 15 TIBCO Website (Year 2005) © Copyright 2000-2015 TIBCO Software Inc.
  16. 16. 16 TIBCO Website (Year 2010) © Copyright 2000-2015 TIBCO Software Inc.
  17. 17. 17 TIBCO Website (Year 2015) © Copyright 2000-2015 TIBCO Software Inc.
  18. 18. 18 Internet Archive Wayback Machine © Copyright 2000-2015 TIBCO Software Inc. Check your favorite software vendor: http://web.archive.org/web (or skip it as you will find very similar information)
  19. 19. 19 Enterprise Service Bus (ESB) © Copyright 2000-2015 TIBCO Software Inc. An  enterprise  service  bus  (ESB)  is  a  soUware   architecture  model  used  for  designing  and   implemen3ng  communica3on  between  mutually   interac3ng  soUware  applica3ons  in  a  service-­‐ oriented  architecture  (SOA).  Its  primary  use  is  in   enterprise  applica3on  integra3on  (EAI)  of   heterogeneous  and  complex  landscapes.     h@p://en.wikipedia.org/wiki/Enterprise_service_bus  (Wikipedia,  2015)  
  20. 20. 20 Central ESB © Copyright 2000-2015 TIBCO Software Inc. hXp://stage.reflectsoUware.com/SOA/Enterprise%20Integra3on%20EAI%20vs.%20SOA%20vs.%20ESB.pdf  
  21. 21. 21 Distributed ESB © Copyright 2000-2015 TIBCO Software Inc. hXp://stage.reflectsoUware.com/SOA/Enterprise%20Integra3on%20EAI%20vs.%20SOA%20vs.%20ESB.pdf  
  22. 22. 22 Is the ESB dead? #NoESB © Copyright 2000-2013 TIBCO Software Inc. Gartner   hXps://www.gartner.com/user/registra3on/webinar? resId=2855231&commId=128383&channelId=5500&srcId=null   Akana  (former  SOA  SoUware)   hXps://blog.soa.com/noesb/  
  23. 23. 23 Is the ESB dead? #NoESB © Copyright 2000-2013 TIBCO Software Inc. •  Do not care about branding •  What is a “modern” ESB? –  flexible, distributed, scalable infrastructure –  build, deploy and monitor any kind of (micro)services in an agile, efficient way with open standards –  Development and deployment can be done on-premise, in the cloud, or a mixture of both –  Be aware of re-branded central EAI brokers with old code base and new name. Watch out for API-only platforms, which re-implement ESB features. •  What to use an ESB for? –  Integration, orchestration, routing, (some kinds of) event processing / correlation / business activity monitoring –  API and REST are great. However, have you ever used a mature and powerful SAP connector? Or what about Internet of Things – it needs messaging (WebSockets, MQTT, AMQP, …)? –  You can also build business applications via (micro)services, which implement your requirements and solve your business problems –  Deploy these services independently from each other with a standardized interface to a scalable runtime platform – automatically –  The services are decoupled and scale linearly across commodity hardware –  Think of an ESB as a “service delivery platform”, not just an integration platform
  24. 24. 24 By the way… © Copyright 2000-2015 TIBCO Software Inc. TIBCO  BusinessWorks       is  the  integra3on  and  service  delivery  plaform  of  TIBCO  for  15+  years…     …  it  was  never  branded  “Enterprise  Service  Bus”!  
  25. 25. Agenda –  Digitalization –  Enterprise Service Bus –  Microservices –  Architecture and Requirements –  Challenges
  26. 26. •  Services implementing a limited set of functions •  Services developed, deployed and scaled independently Microservices “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  27. 27. Shorter time to results •  Scale development and reuse of services •  Use the right technology for the job Increased flexibility •  Change / improve any Microservice without major disruption on apps or other services Benefits of Microservices “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  28. 28. 28 Mhhh…. Sounds  like  SOA!   “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  29. 29. Microservices clearly specify important differences to SOA (as we see SOA implemented in most enterprises today): •  No commitment to a unique technology •  Greater flexibility of architecture •  Services managed as products, with their own lifecycle •  Industrialized deployment •  Dumb routes and smart endpoints instead of a heavyweight ESB Sounds like SOA? Avoid  a  jungle  of  technologies!   Integra3on  s3ll  to  be  done  somewhere!   “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  30. 30. Agenda –  Digitalization –  Enterprise Service Bus –  Microservices –  Architecture and Requirements –  Challenges
  31. 31. Requirements for a Microservices Architecture ①  Service Contracts ②  Exposing new and existing Services ③  Discovery of Services ④  Coordination Across Services ⑤  Managing Complex Deployments and their Scalability ⑥  Visibility and Correlation across Services “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  32. 32. Requirements for Microservices Architecture #1: Services Contract 32 “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  33. 33. 33 Service Contracts Service  provider  express  the  purpose  of  the   Microservice,  and  its  requirements     Other  developers  can  easily  access  this   informa3on   Service  contracts,  and  the  ability  for   developers  to  discover  them,  serve  that   purpose.   “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  34. 34. •  Examples: IDL (CORBA), Java Interface, JMS Messages, SOAP, REST, … •  In Practice today: –  SOAP: Internal, standards-based, XML Schema, easy mappings and transformations, performance no issue (anymore) –  REST (i.e. RESTful HTTP without HATEOAS): External, XML or JSON, Good architecture for mobile devices (simplicity, separation of concerns, no state, uniform interface) –  Messaging (e.g. WebSockets, MQTT): Good for millions of devices (IoT, sensors) •  De facto standard for Microservices as of today: REST •  Internet of Things will move Messaging forward! 34 Technologies for (Micro)Service Contracts “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  35. 35. Requirements for Microservices Architecture #2: Exposing new and existing Microservices “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  36. 36. 36 Services come in various forms Integration Service Monolith application SOA Integration Service Service ServiceService Service API Gateway SaaS Service “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  37. 37. Smart endpoints and dumb pipes “When  building  communica3on  structures  between  different  processes,  we've  seen  many  products  and   approaches  that  stress  pumng  significant  smarts  into  the  communica3on  mechanism  itself.  A  good   example  of  this  is  the  Enterprise  Service  Bus  (ESB),  where  ESB  products  o-en  include  sophis3cated   facili3es  for  message  rou3ng,  choreography,  transforma3on,  and  applying  business  rules.     The  Microservice  community  favours  an  alterna3ve  approach:  smart  endpoints  and  dumb  pipes.   Applica3ons  built  from  Microservices  aim  to  be  as  decoupled  and  as  cohesive  as  possible  -­‐  they  own  their   own  domain  logic  and  act  more  as  filters  in  the  classical  Unix  sense  -­‐  receiving  a  request,  applying  logic  as   appropriate  and  producing  a  response.  These  are  choreographed  using  simple  RESTish  protocols  rather   than  complex  protocols  such  as  WS-­‐Choreography  or  BPEL  or  orchestra3on  by  a  central  tool.     The  two  protocols  used  most  commonly  are  HTTP  request-­‐response  with  resource  API's  and  lightweight   messaging.  The  best  expression  of  the  first  is            Be  of  the  web,  not  behind  the  web            -­‐-­‐  Ian  Robinson”   hXp://mar3nfowler.com/ar3cles/microservices.html#SmartEndpointsAndDumbPipes   “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  38. 38. Smart endpoints and dumb pipes “When  building  communica3on  structures  between  different  processes,  we've  seen  many  products  and  approaches   that  stress  pumng  significant  smarts  into  the  communica3on  mechanism  itself.  A  good  example  of  this  is  the   Enterprise  Service  Bus  (ESB),  where  ESB  products  o-en  include  sophis3cated  facili3es  for  message  rou3ng,   choreography,  transforma3on,  and  applying  business  rules.     The  Microservice  community  favours  an  alterna3ve  approach:  smart  endpoints  and  dumb  pipes.  Applica3ons   built  from  Microservices  aim  to  be  as  decoupled  and  as  cohesive  as  possible  -­‐  they  own  their  own  domain  logic   and  act  more  as  filters  in  the  classical  Unix  sense  -­‐  receiving  a  request,  applying  logic  as  appropriate  and  producing  a   response.  These  are  choreographed  using  simple  RESTish  protocols  rather  than  complex  protocols  such  as  WS-­‐ Choreography  or  BPEL  or  orchestra3on  by  a  central  tool.     The  two  protocols  used  most  commonly  are  HTTP  request-­‐response  with  resource  API's  and  lightweight   messaging.  The  best  expression  of  the  first  is            Be  of  the  web,  not  behind  the  web            -­‐-­‐  Ian  Robinson”   Agreed!       However,  be  aware  that  you  have  to  do  “ESB  tasks”  (integra3on,  rou3ng,  transforma3on,  etc.)  in  the  service  then!       Why?  It  has  to  be  done  somewhere!  Agree?   “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  39. 39. Integration as foundation of Microservices §  Access any data to use in Microservices §  Expose standard transport from Microservices §  Assemble new Microservices “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc. TIBCO   BusinessWorks  6  
  40. 40. Leverage any technology to create Microservices Abstract complex APIs using: •  Standard connectors –  File, JDBC, SOAP, REST, JMS, etc. •  Application connectors –  SaaS (SFDC, Marketo), SAP, Big Data, Mobile, legacy applications, etc. •  Plugin development kit •  Programming languages –  Java, Scala, Ruby, etc. §  Onboard new technologies §  New channels §  New data sources “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc. TIBCO   BusinessWorks  6  
  41. 41. 41 Create REST APIs service quickly §  Top-down or bottom-up modeling §  Automatic docs and testing web UI “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc. TIBCO   BusinessWorks  6  
  42. 42. Requirements for Microservices Architecture #3: Discovery of Services 42 “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  43. 43. The new “Open API” Economy Your   Enterprise   Closed  APIs   EDI   Web   B2B  SOA   FTP   Pre-­‐defined  integra3on  points   Limited,  trusted  partners   Strictly  constrained  interac3ons   Enterprise  friendly   Open  APIs   Opportunis3c  access  points     Many  partners,  untrusted   Encourage  new  ideas   Developer  friendly   Your   Enterprise   Partners   Innovators   Known   Par3es   Consumers   Unknown   Par3es   Suppliers   Coope33on   Employees   API  API   API   API   API   API   API   API   API   API   API   API   API   API   API   API   API   API   API   API   “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  44. 44. •  Developer  self-­‐service   •  API  Lifecycle   •  API  Mone3za3on   API  Portal   •  Security  &  Access  Control   •  Event  Based  Policy  Mgt.   •  Federated  Internet  Scale   API  Gateway   •  Repor3ng  /  Visualiza3on   •  SLA’s  &  KPI’s   •  Full  Audi3ng   API  Analy3cs   API Management – TIBCO API Exchange Cloud  Based   Or   On-­‐Premise   “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  45. 45. Requirements for Microservices Architecture #4: Coordination across services 45 “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  46. 46. 46 Coordination across services via NEW services ?! Smart  service,  dumb  pipe  (no  ESB  in  the  middle)…         How  to  coordinate?   “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  47. 47. Coordination across Services •  Apps / business services are composed from Microservices •  Some Microservices can be composed to accelerate developments §  Graphical design and debug §  Stateful or stateless §  Service or event driven “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc. TIBCO   BusinessWorks  6  
  48. 48. Requirements for Microservices Architecture #5: Managing complex deployments and their scalability “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  49. 49. 49 Continuous Delivery hXp://en.wikipedia.org/wiki/Con3nuous_delivery   Benefits       •  Accelerated  Time  to  Market   •  Building  the  Right  Product   •  Improved  Produc3vity  and  Efficiency   •  Reliable  Releases   •  Improved  Product  Quality   •  Improved  Customer  Sa3sfac3on     Combined  with  “Cloud”     •  Private  /  Public  /  Hybrid  PaaS   •  Flexible  Infrastructure   •  Elas3city     “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  50. 50. 50 Frameworks and Products for Continuous Delivery and DevOps •  Build Management –  Ant, Maven, Gradle, … •  Continuous Integration –  Jenkings, Bamboo, … •  Continuous Delivery –  Chef, Puppet, Salt, … •  Deployment (Elastic VMs / Cloud / Containers) –  Amazon Web Services, Microsoft Azure, CloudFoundry –  VMware, Openstack, Vagrant –  Docker, Spring Boot “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  51. 51. TIBCO Silver Fabric •  DevOps in the TIBCO Universe –  Out-of-the-box support for TIBCO products such as BusinessWorks –  Complementary (not XOR!) to build, continuous integration and delivery, cloud, container and VM tools (see last slide)! •  Continuously deploy, configure and manage your applications and middleware, on premise or in the cloud. •  DevOps – Continuous Integration / Delivery –  Configuration Manager for Global Variables –  End-to-End Scripting, Automation & Visibility •  Manages quality of deployed applications –  Ports Management & Elastic Load Balancer –  Dashboard & Full Visibility –  SLA based auto scaling & elasticity Self Service Administration “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  52. 52. TIBCO TEA: Unified Administration “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  53. 53. #6: Visibility and Correlation across Services Requirements for Microservices Architecture “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  54. 54. The New Era: Fast Data Processing •  Events are analyzed and processed in real-time as they arrive. •  Decisions are timely, contextual, and based on fresh data. •  Decision latency is eliminated, resulting in: ü  Superior Customer Experience ü  Operational Excellence ü  Instant Awareness and Timely Decisions © Copyright 2000-2015 TIBCO Software Inc. Act & Monitor Analyze Store
  55. 55. Voltage Temperature Vibration Device history Temporal analytic: “If vibration spike is followed by temp spike then voltage spike [within 12 minutes] then flag high severity alert.” Event Processing (Correlation of Events) “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  56. 56. 56 Microservices and the need for a “Bus”? Event  correla3on  is  the  requirement,   where  you  really  need  a  “bus”.       However,  this  “bus”  is  not  an  ESB,  but   an  in-­‐memory  event  server.   “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  57. 57. Live Datamart •  TIBCO Live Datamart •  “live business intelligence” platform for real-time streaming data •  push based query results and alerts, human interaction Event Processing: Stream & Event-Based
 Event Server •  TIBCO BusinessEvents •  rules-based event processing platform for real-time reasoning Streaming Analytics •  TIBCO StreamBase •  applies mathematical and relational processing to real- time data streams. Integra3on   PartnersSaaSApplicationsBig Data SourcesMarket DataIoTMobileSocial TERR Predictive Analytics
  58. 58. Agenda –  Digitalization –  Enterprise Service Bus –  Microservices –  Architecture and Requirements –  Challenges
  59. 59. 59 Necessary Rules and Guidelines © Copyright 2000-2015 TIBCO Software Inc. Stefan  Tilkov,  h@ps://speakerdeck.com/s2lkov/microservices-­‐talk-­‐berlin  
  60. 60. 60 Avoid a zoo of technologies and frameworks! © Copyright 2000-2015 TIBCO Software Inc. Java   JavaScript   Java  Process   (JAR  File)   Java  EE   App  Server   Node.js   Server   .NET   Plaform   C#  +  F#   Scala  +  Groovy   Framework  1   Framework  2   Framework  X   No  Framework   Tool  1   Tool  2   No  Tool   Tool  X   Middleware   Plaform  
  61. 61. 61 DevOps / Continuous Delivery © Copyright 2000-2015 TIBCO Software Inc. Theory Every team is responsible for development, test, deployment and operations. Therefore, technology and tool choice do not matter. Practice People and intellectual property leave companies. An enterprise strategy exists to reduce risks and costs. The team cannot control everything (e.g. when using Open API or SaaS services).
  62. 62. 62 Microservices is a lot of effort! © Copyright 2000-2015 TIBCO Software Inc. •  Significant operations overhead •  Substantial DevOps skills required •  Implicit interfaces •  Duplication of effort •  Distributed system complexity •  Asynchronicity is difficult •  Testability Challenges hXp://highscalability.com/blog/2015/4/8/microservices-­‐not-­‐a-­‐free-­‐lunch.html   ”[…]  when  considering  Microservice  like  architectures,  it's  really  important  to  not  be   aXracted  to  the  hype  on  this  one  as  the  challenges  and  costs  are  as  real  as  the   benefits."  
  63. 63. Microservices - A new approach to build applications Build only what you need •  Adapt when your need change Develop / maintain / deploy faster •  From services to applications, apps and APIs Reuse and scale •  Scale the way your business needs with policies Accelerate innovation •  Use services as a launching point, not a burden Leverage your data •  Create differentiating services © Copyright 2000-2015 TIBCO Software Inc.
  64. 64. Did you get the Key Message?
  65. 65. Key Messages –  Microservices = SOA done right! –  Integration is key for success – the product name does not matter! –  Real time event correlation is the game changer!
  66. 66. Questions? Kai Wähner kwaehner@tibco.com @KaiWaehner www.kai-waehner.de Xing / LinkedIn à Please connect!

×