Deep-Dive Appendices
Technology deep dives, case studies, and reference material — Kafka deep dive, Pulsar, Redis, Quarkus Flow, Drools, observability, Kubernetes deployment, Camel CLI, Camel TUI, Citrus testing, AI and MCP, consumer/producer tuning, share groups, diagnostics, Kafka Connect offsets, testing strategies, virtual threads, and the Loan Broker and Bond Trading case studies.
Appendix A: Camel on Spring Boot vs Quarkus
Java DSL with Spring Boot (Camel Spring Boot) vs Quarkus (Camel Quarkus) — DI models, configuration, testing, deployment, and the Spring XML DSL.
Appendix B: Kafka Deep Dive
Topics, partitions, consumer groups, exactly-once semantics, and Kafka operational patterns for integration architects.
Appendix C: Pulsar Deep Dive
Topics, subscriptions, schema registry, per-message TTL, and Pulsar's unique capabilities for integration patterns.
Appendix D: Redis for Integration
Redis as a caching layer, idempotent store, pub/sub channel, and distributed lock for integration patterns.
Appendix E: Quarkus Dev Mode
Dev services, continuous testing, live reload, and the JBang-to-Quarkus promotion workflow.
Appendix F: Drools and Business Rules
Rule units, decision tables, and integrating Drools 10 with Camel routes for externalized business logic.
Appendix G: Quarkus Flow
Serverless workflows and saga orchestration with Quarkus Flow, integrated with Camel routes.
Appendix H: Feature Flags
Flagd + OpenFeature with Camel routes — gradual rollouts, A/B testing, and runtime route control.
Appendix I: Observability Stack
OpenTelemetry instrumentation, Grafana dashboards, distributed tracing through Camel routes, and the LGTM stack.
Appendix J: The Loan Broker Case Study
A complete EIP case study — the classic Loan Broker from Hohpe & Woolf, reimagined with Apache Camel, Kafka, and the shipping domain.
Appendix K: Bond Trading Case Study
A second EIP case study — real-time bond pricing, market data distribution, and trade execution with Camel and Kafka.
Appendix L: Glossary
Definitions of key terms, patterns, and technologies used throughout this tutorial.
Appendix M: Virtual Threads for Camel Workloads
How Java virtual threads work under the hood, and how they transform throughput for I/O-bound Camel routes on Quarkus.
Appendix N: Kafka Consumer Tuning
Fetch sizes, poll intervals, offset commits, session timeouts, and static group membership for Camel Kafka consumers.
Appendix O: Kafka Producer Tuning
Batching, compression, acknowledgments, idempotence, and retry strategies for Camel Kafka producers.
Appendix P: Kafka Share Groups
KIP-932 share groups bring queue semantics to Kafka — per-message acknowledgment, competing consumers without partition coupling, and the KafkaShareConsumer API.
Appendix Q: Kafka Diagnostics
Collecting broker logs, consumer group state, topic metadata, JMX metrics, and thread dumps for Kafka troubleshooting.
Appendix R: Managing Kafka Connect Offsets
Listing, altering, and resetting connector offsets via the Kafka Connect REST API for reprocessing, migration, and recovery.
Appendix S: Testing Strategies for Camel Quarkus
Three-tier testing — unit tests with MockEndpoint and AdviceWith, integration tests with Dev Services and REST Assured, and black-box API tests with Newman.
Appendix T: Deploying Camel to Kubernetes
Standard Maven-based container builds and Kubernetes deployments for Camel applications — Quarkus and Spring Boot on Minikube with Strimzi Kafka and Redis.
Appendix U: Camel CLI Deep Dive
A comprehensive guide to the Camel CLI — prototyping routes with camel run, tracing exchanges, debugging, managing infrastructure, and exporting to production runtimes.
Appendix V: Camel TUI
The Camel TUI terminal dashboard — monitoring routes, tracing exchanges, inspecting message flow, and debugging integration issues without leaving the terminal.
Appendix W: Citrus Integration Testing
End-to-end integration testing with Citrus — testing Camel routes against real Kafka, HTTP, and database infrastructure using the Camel test plugin.
Appendix X: AI and MCP with Camel
Integrating AI into Camel routes — the LangChain4j Chat component for classification and tool calling, MCP servers for AI coding assistants, and Wanaku for exposing Camel routes as AI tools.