Training at CamelOne 2012
Developer Training for Fuse Message Broker (ActiveMQ)
- Course prerequisites
- Detailed Agenda – Day 1: JMS messaging with ActiveMQ
- Detailed Agenda – Day 2: Optimizing and Deploying ActiveMQ Applications
This live two-day course teaches developers and architects how to build solutions using Apache ActiveMQ and provides a fundamental understanding of JMS and the enterprise capabilities of ActiveMQ.
This Developer Training for Apache ActiveMQ will be delivered using Fuse Message Broker, which is a certified, tested, and supported distribution of Apache ActiveMQ. All hands-on exercises will be done with Fuse Message Broker.
Course Prerequisites
Attendees should have a good working knowledge of
- Java programming language
- Java development tools (Ant, Maven, Eclipse)
- Basic understanding of distributed systems concepts (SOA, WebServices) and the related standards (SOAP, XML, WSDL, JMS)
Detailed Agenda – Day 1: JMS messaging with ActiveMQ
| Time | Format | Content |
| 9:00 – 10:00 | Classroom session | Installing, running, configuring and monitoring an ActiveMQ broker |
| 10:00 – 10:45 | Exercise / demo | How to verify an installation of FUSE Message Broker. How to start, query and shutdown an ActiveMQ broker and use jConsole for monitoring the broker |
| 10:45 – 11:00 | Break | . |
| 11:00 – 12:00 | Classroom session | Programming a JMS client application to connect to a broker and produce and consume messages |
| 12:00 – 12:45 | Exercise / demo | How messaging works in the point-to-point domain and in the publish/subscribe domain |
| 12:45 – 1:45 | Break | . |
| 1:45 – 2:45 | Classroom session | Accessing an administered object factory, implementing request-response and using transacted sessions; durable versus non-durable subscribers; JMS performance tuning |
| 2:45 – 3:30 | Exercise / demo | Comparing durable subscriber behavior to non-durable subscriber behavior; comparing transacted sessions to non-transacted sessions |
| 3:30 – 3:45 | Break | . |
| 3:45 – 4:45 | Classroom session | ActiveMQ extensions to JMS such as destination policies for dispatching, pre-fetching and recovering messages; administering ActiveMQ through advisory queue and topic channels |
| 4:45 – 5:30 | Exercise / demo | Using wildcards in destination policies to create federated name hierarchies of topics |
| 5:30 – 5:45 | Break | . |
| 5:45 – 6:00 | Wrap-up / feedback | . |
Detailed Agenda – Day 2: Optimizing and Deploying ActiveMQ Applications
| Time | Format | Content |
| 9:00 – 10:00 | Classroom session | Ordered message processing with exclusive consumers; sticky load-balancing with message groups |
| 10:00 – 10:45 | Exercise / demo | Messaging via exclusive consumer and prioritized multi-consumer queues; using message groups |
| 10:45 – 11:00 | Break | . |
| 11:00 – 12:00 | Classroom session | Implementing highly-available, load-balanced durable subscribers and broker-based routing |
| 12:00 – 12:45 | Exercise / demo | Splitter / Forwarding messages through virtual destinations |
| 12:45 – 1:45 | Break | . |
| 1:45 – 2:30 | Classroom session | Broker topologies, transport protocols, and client-server connections for failover, reconnection and replication |
| 2:30 – 3:00 | Exercise / demo | Failover and continuous availability with master-slave brokers |
| 3:30 – 3:45 | Classroom session | Broker networks for scalability and master-slave configurations for high-availability |
| 3:45 – 4:00 | Break | . |
| 4:00 – 4:30 | Classroom session | Using ActiveMQ in heterogeneous environments with .NET and C++ clients, Stomp wire format, and JCA. |
| 4:30 – 5:00 | Online session | Implementing web applications with ActiveMQ using the AjaxServlet |
| 5:00 – 5:15 | Break | . |
| 5:15 – 5:45 | Wrap-up / feedback | . |