SlideShare ist ein Scribd-Unternehmen logo
1 von 22
OSGi and Messaging Building large applications that don't break down Iwein Fuld - SpringSource Copyright 2008 SpringSource.  Copying, publishing or distributing without express written permission is prohibited.
Topics in this session ,[object Object]
Single threaded breakdown
Synchronous breakdown ,[object Object],[object Object]
Multi threading
Messaging ,[object Object],Copyright 2008 SpringSource.  Copying, publishing or distributing without express written permission is prohibited.
What is performance? ,[object Object]
Throughput (Concurrent processing)
Utilization (Map – Reduce) ,[object Object],[object Object],[object Object],[object Object],Copyright 2008 SpringSource.  Copying, publishing or distributing without express written permission is prohibited.
Code supernova ,[object Object]
Code bases shall grow
Therefore teams shall grow
Therefore code bases shall grow faster
Until they are infinite UNLESS: ,[object Object]
someone pulls the plug
we modularize and evolve Copyright 2008 SpringSource.  Copying, publishing or distributing without express written permission is prohibited.
The single thread breakdown ,[object Object]
In ten years systems with less than 10 cores will be rare
Web servers work with thread pools  BUT ,[object Object],Copyright 2008 SpringSource.  Copying, publishing or distributing without express written permission is prohibited.
The synchronous breakdown ,[object Object],Copyright 2008 SpringSource.  Copying, publishing or distributing without express written permission is prohibited.
Topics in this session ,[object Object]
Single threaded breakdown

Weitere ähnliche Inhalte

Ähnlich wie Os Gi+Spring Integration

Openmeetings
OpenmeetingsOpenmeetings
Openmeetings
hs1250
 
JAZOON'13 - Stefan Saasen - Real World Git Workflows
JAZOON'13 - Stefan Saasen - Real World Git WorkflowsJAZOON'13 - Stefan Saasen - Real World Git Workflows
JAZOON'13 - Stefan Saasen - Real World Git Workflows
jazoon13
 
Understanding progressive enhancement - yuiconf2010
Understanding progressive enhancement - yuiconf2010Understanding progressive enhancement - yuiconf2010
Understanding progressive enhancement - yuiconf2010
Christian Heilmann
 

Ähnlich wie Os Gi+Spring Integration (20)

Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
 
Questions Log: Transitioning to Cognos Workspace Advanced
Questions Log: Transitioning to Cognos Workspace AdvancedQuestions Log: Transitioning to Cognos Workspace Advanced
Questions Log: Transitioning to Cognos Workspace Advanced
 
Openmeetings
OpenmeetingsOpenmeetings
Openmeetings
 
Confess_2011 - Rapid Rich Client Development with Spring Roo and GWT
Confess_2011 - Rapid Rich Client Development with Spring Roo and GWTConfess_2011 - Rapid Rich Client Development with Spring Roo and GWT
Confess_2011 - Rapid Rich Client Development with Spring Roo and GWT
 
From Mediasoup WebRTC to Livekit Self-Hosted .pdf
From Mediasoup WebRTC to  Livekit Self-Hosted .pdfFrom Mediasoup WebRTC to  Livekit Self-Hosted .pdf
From Mediasoup WebRTC to Livekit Self-Hosted .pdf
 
Real World Git Workflows - EclipseCon Europe 2013
Real World Git Workflows - EclipseCon Europe 2013Real World Git Workflows - EclipseCon Europe 2013
Real World Git Workflows - EclipseCon Europe 2013
 
Operations and Monitoring with Spring
Operations and Monitoring with SpringOperations and Monitoring with Spring
Operations and Monitoring with Spring
 
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
 
Jumping in Jakarta Open Source Project Everything nobody tells you
Jumping in Jakarta Open Source Project  Everything nobody tells youJumping in Jakarta Open Source Project  Everything nobody tells you
Jumping in Jakarta Open Source Project Everything nobody tells you
 
Service virtualization with npm modules updated
Service virtualization with npm modules updatedService virtualization with npm modules updated
Service virtualization with npm modules updated
 
WordCamp Belfast DevOps for Beginners
WordCamp Belfast DevOps for BeginnersWordCamp Belfast DevOps for Beginners
WordCamp Belfast DevOps for Beginners
 
Lean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerLean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partner
 
Présentation du FME World Tour 2018 à Montréal
Présentation du FME World Tour 2018 à MontréalPrésentation du FME World Tour 2018 à Montréal
Présentation du FME World Tour 2018 à Montréal
 
JAZOON'13 - Stefan Saasen - Real World Git Workflows
JAZOON'13 - Stefan Saasen - Real World Git WorkflowsJAZOON'13 - Stefan Saasen - Real World Git Workflows
JAZOON'13 - Stefan Saasen - Real World Git Workflows
 
Deploying node.js at scale - Maraschi, Collina - Codemotion Amsterdam 2016
Deploying node.js at scale - Maraschi, Collina - Codemotion Amsterdam 2016Deploying node.js at scale - Maraschi, Collina - Codemotion Amsterdam 2016
Deploying node.js at scale - Maraschi, Collina - Codemotion Amsterdam 2016
 
Understanding progressive enhancement - yuiconf2010
Understanding progressive enhancement - yuiconf2010Understanding progressive enhancement - yuiconf2010
Understanding progressive enhancement - yuiconf2010
 
HTTP cache @ PUG Rome 03-29-2011
HTTP cache @ PUG Rome 03-29-2011HTTP cache @ PUG Rome 03-29-2011
HTTP cache @ PUG Rome 03-29-2011
 
Server Day 2009: Spring dm Server by Alef Arendsen
Server Day 2009: Spring dm Server by Alef ArendsenServer Day 2009: Spring dm Server by Alef Arendsen
Server Day 2009: Spring dm Server by Alef Arendsen
 
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
 
Version Control ThinkVitamin
Version Control ThinkVitaminVersion Control ThinkVitamin
Version Control ThinkVitamin
 

Mehr von Iwein Fuld (7)

Simplicity, elegance, correctness
Simplicity, elegance, correctnessSimplicity, elegance, correctness
Simplicity, elegance, correctness
 
Spring integration motivation and history
Spring integration motivation and historySpring integration motivation and history
Spring integration motivation and history
 
Mythical Powers Of Oss
Mythical Powers Of OssMythical Powers Of Oss
Mythical Powers Of Oss
 
Defluffing Cloud Computing
Defluffing Cloud ComputingDefluffing Cloud Computing
Defluffing Cloud Computing
 
Tc Server Glance Over
Tc Server Glance OverTc Server Glance Over
Tc Server Glance Over
 
Ams+Dm Server+Ec2
Ams+Dm Server+Ec2Ams+Dm Server+Ec2
Ams+Dm Server+Ec2
 
Spring Integration and EIP Introduction
Spring Integration and EIP IntroductionSpring Integration and EIP Introduction
Spring Integration and EIP Introduction
 

Kürzlich hochgeladen

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Kürzlich hochgeladen (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 

Os Gi+Spring Integration

  • 1. OSGi and Messaging Building large applications that don't break down Iwein Fuld - SpringSource Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 2.
  • 4.
  • 6.
  • 7.
  • 9.
  • 10.
  • 13. Therefore code bases shall grow faster
  • 14.
  • 16. we modularize and evolve Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 17.
  • 18. In ten years systems with less than 10 cores will be rare
  • 19.
  • 20.
  • 21.
  • 23.
  • 25. Messaging Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 26.
  • 28. Some other really nice things that I don't need to tell you about Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 29.
  • 30.
  • 32. Map reduce Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 33. What is Messaging? Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited. How can multiple agents work together?... ...without being in each others way. Waiter helps customer and cook to collaborate.
  • 34. Characteristics of Messaging Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited. Transport The waiter takes an order and moves it to the barista Asynchronous Different actors can do different things in parallel Translation menu item => number => recipe Routing Orders arrive back at the proper table
  • 35. Spring Integration Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 36. Pipes and Filters Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited. Sender Application Receiver Application Channel MessageEndpoint
  • 37. Hello world Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited. <service-activator input-channel = &quot;inputChannel&quot; default-output-channel = &quot;outputChannel&quot; ref = &quot;helloService&quot; method = &quot;sayHello&quot; /> < beans:bean id = &quot;helloService&quot; class = &quot;...HelloService&quot; /> public class HelloService { public String sayHello(String name) { return &quot;Hello &quot; + name; } }
  • 38. Channels Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited. < channel id = &quot;incoming&quot; /> < channel id = &quot;orderedNotifications&quot; > <queue capacity = &quot;10&quot;/ > </channel>
  • 39.
  • 40.
  • 41.
  • 42. Not an ESB Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 43.
  • 44.
  • 45.
  • 46. Focus on the deployment architecture not the actual integration. Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 47. Basic Integration Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 48. With a bus Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 49. Demo Time Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 50.
  • 51.
  • 52.
  • 53. STS, dm Server Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.
  • 54. Questions and Plugs Ask now... or visit our booth... or google “Iwein Fuld” Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited.

Hinweis der Redaktion

  1. Next up: Introduction to Spring integration which covers: - How and why Spring Integration came into existence
  2. Next up: Introduction to Spring integration which covers: - How and why Spring Integration came into existence
  3. Next up: Introduction to Spring integration which covers: - How and why Spring Integration came into existence
  4. Next up: Introduction to Spring integration which covers: - How and why Spring Integration came into existence
  5. Next up: Introduction to Spring integration which covers: - How and why Spring Integration came into existence
  6. Spring Integration was created by Mark Fisher of SpringSource. - It is an implementation of the patterns described in Enterprise Integration Patterns by Hohpe and Woolf. - The book itself doesn’t give concrete usable components, Spring Integration does this: non invasive declarative
  7. Endpoints connect application code to the integration framework.
  8. There is quite some code in the slide. Go over it slowly and promise another look during the demo. TODO enlarge code samples -&gt; two slides
  9. Channels are buffers that hold messages, responsible for transporting the messages from sender to receiver(s) Mention equivalence with JMS Queues
  10. Download the SI distribution or check out the project from svn, import the sample projects into STS. Show at least the CafeDemo xml variant. If there is time you can show some of the following: - Tweaking for performance (add a thread-pool-task-executor to the poller, play with the trigger) - Other demos - add a JMX based detour (router with @ManagedAttribute outputChannel) to the deliveredOrders