Nyheder og Jobs

Enterprise Service Bus: Lessons from the Field

Et af mine (Nikolaj Brinch) eneste foredrag relateret til SOA og EA i år var dette.

Et foredrag af Cisco og NFL. ESB som integrationsplatform for alt data hos NFL (som er et stort site, med meget traffik)

ESB != JMS

Valg af ESB:

  • SEDA support.
  • Lightweight
  • Configuration, Not Code
  • Monitoring skal være på plads, ellers er det totalt umuligt at finde ud af hvad der sker i ESB’en. I produktion når f.eks. beskeder bare forsvinder, hvor bliver de så af, hvad får dem til at forsvinde, osv.
  • OpenSource er langt at foretrække, frem for proprietary closed source løsninger.

ESB er paradigme skift. ESB som værtøj giver mulighed for at implementere Gregor Hohpes EIP ved brug af middleware som allerede har den plumbing som ellers skal laves fra bunden selv.

http://www.eaipatterns.com/ramblings/18_starbucks.html

Der er meget forskellig produkter på hylderne som kalder sig ESB, derfor er ikke alle ESB lige passende til rigtig EI (Enterprise Integration). Spring Integration og Apache Camel er EIP integrations platforme, men IKKE ESB’er.

Don’ts:

  • Use ESB as passthrough proxy (indirection layer).
    • ESB in the middle ONLY if it adds any value
  • Not even for cached indirection
  • Another point of failure
  • ESB as Cron
    • Schedule monolithic jobs
  • ESB as Application Glue
    • Use Spring
    • No Complex transformations
    • YAGNI

Best Practices:

  • Data Integration
    • Leverage existing transformation tools
    • Data Canonicalzation
  • Data Validation
    • Strict vs Relaxed – do Relaxed like the internet. Use RELAX_NG or SchemTron
  • Event Model
    • Pull vs Push
  • Security
    • Not that differnt
    • Employ well known practices
    • ESB makes it easier to implement security
  • Scalability
    • Do partitioning
    • Get your metrics right before tuning
    • Do GC tuning

Egentlig et godt indlæg, som fik gjort en del af de tidligere brug af ESB til skamme. Altså dem som PowerPoint arkitekterne har brugt ESB til, fordi vendors har fortalt dem at det var vigtigt med ESB, og at al kommunikation skulle gå over ESB.

“ESB is a powerful construct use it wisely” (or use it not wisely)

Så kan jeg lige slå et slag for at alle der har med integration at gøre, for læst Enterprise Integration Patterns af Gregor Hohpe – det er virkelig en god bog! :-)