1 / 20

ServiceMix future

ServiceMix future. Jean-Baptiste Onofré, Talend jbonofre@apache.org, 2011-11-10. Summary. SMX versions Current state: architecture and NMR features Short term: SMX 4.4 Middle term: SMX 5. My Background. Jean-Baptiste Onofré Software Architect at Talend ASF member

jalena
Download Presentation

ServiceMix future

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ServiceMix future Jean-Baptiste Onofré, Talendjbonofre@apache.org, 2011-11-10

  2. Summary • SMX versions • Current state: architecture and NMR features • Short term: SMX 4.4 • Middle term: SMX 5

  3. My Background • Jean-Baptiste Onofré • Software Architect at Talend • ASF member • PMC for Karaf and ServiceMix • Committer for ACE, Camel, Kalumet

  4. ServiceMix ? • Apache ESB • Reliable messaging • Routing/messaging/EIP • WS/REST • WS-BPEL • Production ready feature (provisioning, cluster, etc)

  5. SMX 3: old stable • Very popular in production • Powered by Spring, and JBI oriented ServiceMix JBI Components Camel CXF ActiveMQ Spring

  6. SMX 4: current stable • OSGi/Karaf powered • NMR layer • JBI backward compatible ServiceMix JBI Components Camel CXF NMR JBI ActiveMQ Camel CXF Karaf

  7. Pro/Cons

  8. Short term • SMX JBI Components 2011.02: dependencies upgrade (ActiveMQ 5.5.0, Camel 2.8.3, CXF 2.5.0) • SMX Specs 1.9.0 • SMX Utils 1.5.0 • SMX 3.4: last SMX3 release, just dependencies upgrade

  9. Short term: SMX 4.4 • Dependencies upgrade: Karaf 2.2.4, ActiveMQ 5.5.0, Camel 2.8.3, CXF 2.4.4 • Documentation/website • Improvement on build and remove the JBI layer by default • Focus on the NMR 1.5.0 features

  10. Current NMR status • NMR is a feature: core bus of SMX4 • NMR is highly plug and play • JBI is just a subset of the NMR

  11. NMR security • Users authentication • Endpoint access authorization • Exposed as OSGi services:org.apache.servicemix.nmr.api.security.AuthenticationService org.apache.servicemix.nmr.api.security.AuthorizationService • Configured as service properties: endpoint, operation, type, roles, rank

  12. NMR JNDI • Provide a JNDI context factory • Expose OSGi service as JNDI using osgi:services/<interfaces>[/filter] InitialContext context = new InitialContext(); ExampleService = (ExampleService) context.lookup("osgi:services/com.example.ExampleService");

  13. NMR Interceptors • Intercept messages between NMR endpoints using: • NMR events (global) • Wires (specific from/to)

  14. NMR Events • API receiving notifications • EndpointListener public interface EndpointListener { void endpointRegistered(InternalEndpoint endpoint); void endpointUnregistered(InternalEndpoint endpoint); } • ExchangeListener public interface ExchangeListener { void exchangeSent(Exchange exchange); void exchangeDelivered(Exchange exchange); void exchangeFailed(Exchange exchange); } • Registration as OSGi services

  15. NMR Audit • File or JBDC auditor • Store all exchanges including mep, status, role, properties, in (content and properties), out (content and properties), fault (content and properties) • Shell commands to manipulate the audit log: audit/find “status: error”

  16. SMX5, Karaf Karaf 3 with profiles, OSGi subsystem, etc Karaf Cellar cluster support (especially around DOSGi) Karaf Cave as default repository/registry Provide a complete pro console (leveraging the new Karaf WebConsole sub-project)

  17. SMX5, from NMR to Camel • Promote Camel as the premium solution for routing (replacement of the NMR) • Refactor most interesting NMR features to be Camel oriented (audit, events, tracing, etc) • Leverage Camel new features: support of async transactions, unified statistics, improvement of the ThreadPoolProfile for thread management, etc

  18. SMX5, CXF Leverage new CXF features: • Better OSGi/Karaf integration (new shell commands, etc), including config admin to configure CXF workqueues • Better management capabilities • Better performance especially around WS-Security • Security: STS, WS-Trust support, JAX-RS security (OAuth 2, SAML, etc) • Update to WS-RM 1.1 • Update to use CXF WS-Notification

  19. Sources • Links • servicemix.apache.org • karaf.apache.org • camel.apache.org • cxf.apache.org • activemq.apache.org

  20. Contact • Jean-Baptiste (JB) Onofré • jbonofre@apache.org • http://blog.nanthrax.net Q&A

More Related