Top 10 Features of Petals ESB and How to Use Them
-
Distributed architecture
- What it is: Multiple Petals instances form a single logical bus across machines.
- How to use: Deploy containers on separate servers and register them with the Hazelcast registry (or Petals registry). Design services as independent components and rely on the registry for service discovery and routing.
-
JBI (JSR-208) compliance and component model
- What it is: Standard Java Business Integration runtime with pluggable JBI components.
- How to use: Package adapters or mediators as JBI components, install them into the Petals container (using the CLI or cockpit), and wire endpoints through service assembly descriptors.
-
Guaranteed message delivery & persistence
- What it is: Messages are persisted and retried to ensure delivery when consumers are temporarily unavailable.
- How to use: Use durable endpoints and configure persistence in the container configuration; monitor the message store via Petals Cockpit and tune retry/persistence settings for your SLA.
-
Message routing and dynamic recipient selection
- What it is: Runtime selection of service providers based on rules, registry, or message properties.
- How to use: Define routing rules in service assemblies or use the registry’s capabilities. Combine with filters/conditions in components (or Apache Camel routes) to implement content-based or header-based routing.
-
High availability and load balancing
- What it is: Distributed topology plus runtime selection enables failover and load distribution.
- How to use: Deploy multiple service instances across containers; register identical services so the registry can balance requests. Configure routing policies (round-robin, least-loaded) where supported.
-
Connectivity (connectors/adapters)
- What it is: Built-in connectors for SOAP/HTTP, REST, JMS, FTP/SFTP, SMTP/IMAP, JDBC, file, Quartz, etc.
- How to use: Install and configure the needed connector components; create service bindings (WSDL or configuration) that expose or consume external systems through those connectors.
-
Processing components: transformations, EIP, BPMN
- What it is: Support for XSLT/XSD validation, Apache Camel EIP patterns, Flowable BPMN engine, POJO/JSR-181 components.
- How to use: Use XSLT or validators in mediation chains for payload transformation/validation. Model orchestrations in Flowable/ BPEL and deploy them as components. Use Camel routes for complex EIP flows.
-
Monitoring and administration tools
- What it is: Petals Cockpit (web console), CLI, and Studio (Eclipse) for dev/admin tasks and runtime monitoring.
- How to use: Use Petals Studio to build and package components, CLI to script deploy/monitor, and Cockpit to view message
Leave a Reply