middleware should think globally and act locally
play

Middleware Should Think Globally and Act Locally Mark Hapner - PowerPoint PPT Presentation

Middleware Should Think Globally and Act Locally Mark Hapner Distinguished Engineer Sun Microsystems, Inc. 11/27/2007 Middleware has been focused on data consistency integrations 2 Data Consistency ETL - extract/transform/load


  1. Middleware Should Think Globally and Act Locally Mark Hapner Distinguished Engineer Sun Microsystems, Inc. 11/27/2007

  2. Middleware has been focused on data consistency ‘integrations’ 2

  3. Data Consistency • ETL - extract/transform/load > Stovepipe Apps > Batch Infrastructure • Data Pipes > Stovepipe Apps > MOM Infrastructure • Middleware is local ‘data bus’ > Clear line between ‘integration’ and ‘application’ > Emphasis is on breadth of app ‘adaptors’ > Alternative to shared data and shared function 3

  4. Entering the ‘Service’ age • Data and Function is shared via Services > Global computing delivers sharing > Unrestricted by locality > Unrestricted by proprietary architectures > Both synchronous and asynchronous > Data consistency pipes via services > Open standards > Internet > HTTP, Soap, AS2 > Different partitioning of responsibilities > Intranet/Internet > Application ? > Middleware ? 4

  5. We’ve All Heard the Service Mantra • Reuse • Agility • Discovery • Interface • Interop These are nice ... But they aren’t enough ... 5

  6. Practically everything we will do in computing from now on requires collaboration via shared services. 6

  7. To survive, orgs must offer their value and leverage the value of others via services. 7

  8. Internal and external collaboration is interleaved. 8

  9. Different infrastructures for internal vs external collaboration are no longer practical. 9

  10. Service ‘architectures’ over-focus on ‘interfaces’ and ignore collaboration. 10

  11. Creating and maintaining a community of use - a collaboration - is the goal of a service. 11

  12. The power of a collaboration is the capacity of its ‘global’ roles to hide the ‘local’ concerns of its parties. 12

  13. A ‘third party’ View of a Collaboration Functional Collaboration Role Role X Y Infrastructure Collaboration Protocol Collaboration 13

  14. Functional Collaboration business entities requests Role Role correlation values X Y conversations orchestration rules UBL OTA WSDL ACORD AIAG ECXM RelaxNG Schematron XML Schema XML Infoset 14

  15. Infrastructure Collaboration identity provider Role authorization provider Role X transaction monitor Y portal queue Liberty XACML SPML WSRP X509 SAML WS-RX WS-Security 15

  16. Protocol Collaboration request-response Role Role message format X Y message exchange pattern attachments HTTP Soap TLS AS2 SMIME SMTP MIME 16

  17. Collaboration design should be formal and loosely coupled with service design. 17

  18. Collaborations are complex shared relationships. They have an existence that transcends the local concerns of its parties. 18

  19. What local architecture best supports the implementation lifecycle and sharing that collaboration providers and consumers require? 19

  20. What local architecture best separates the responsibilities of business logic developers from those of service domain administration? 20

  21. Some Competing Architectures • Direct Connect • Service Fabric • Service Bus • Service Gateway 21

  22. Direct Connect Domain Domain Code Code Container Container Collaboration 22

  23. Containers are focused on ‘resourcing’ business logic rather than administering collaboration. 23

  24. Service Fabric Domain Code Code Code Code Code Fabric 24

  25. Fabrics simplify local composition. 25

  26. Service Bus Domain Code Code Data Xform BPM Container Container Bus Rules Container Code 26

  27. Service Bus’s simplify composition within a service. 27

  28. Service Gateway Domain Domain Code Policy Policy Code Container Container Gateway Gateway Collaboration 28

  29. In effect, the Gateway is the implementation of the service domain layer. 29

  30. Gateway Role • Protect the domain > From collaboration risks > From code risks • Represent the domain > To the collaboration > To the code • Enforce domain policy > On the collaboration > On the code • Monitor and audit domain activity 30

  31. A Gateway provides a Domain with a homogeneous layer of declarative policy to administer a heterogenous local service infrastructure. 31

  32. Gateways ‘virtualize’ Services • They map between collaboration policy and local policy > Security > Identity > Access control • They validate schemas and enforce depth and complexity restrictions • They provide content based routing for service levels, rolling upgrade, etc. • They virtualize service metadata 32

  33. Service consumption benefits from gateway policy as much as does service provision. 33

  34. A Gateway administers inter-domain and intra-domain policy with equal ease. 34

  35. Service Gateways such as Layer 7, Reactivity (Cisco), DataPower (IBM), SOA Software and Forum Systems meet domain throughput and availability requirements. 35

  36. Another form of domain policy infrastructure distributes some policy enforcement via container agents. Amberpoint is one such product. 36

  37. Gateways are also being layered. 37

  38. Without some form of domain policy infrastructure it’s difficult to create and maintain service collaborations. 38

  39. Container Role Expands • Collaboration also requires more complex business logic • Containers are evolving to support multiple forms of business logic • The combination of data transform, BPM, rules, EJBs, scripting, etc. that earlier required a Service Bus can often be done within a single ‘composite’ container 39

  40. Conclusions • The objective of Middleware is evolving from ‘integration’ to ‘collaboration’ • Local and global collaboration are becoming interleaved - a single architecture for both is required • Middleware is dividing into two loosely coupled layers > Composite application container tooling/infrastructure > Domain policy enforcement tools/infrastructure • Their combination provides the local architecture for global collaboration 40

  41. Inter-Domain Collaboration Domain Domain Code Policy Policy Code Container Container Gateway Gateway Collaboration 41

  42. Intra-Domain Collaboration Domain Policy Policy Code Code Container Container Gateway Collaboration 42

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend