Ponte en Contacto

Temario del curso

1. Introducción a Apache Camel Avanzado

  • Objetivos del curso y visión general de la arquitectura
  • Repaso de los fundamentos de Apache Camel
  • Resumen de los Patrones de Integración Empresarial (EIP)
  • Novedades en las versiones recientes de Apache Camel
  • Mejores prácticas para proyectos de integración empresarial

2. Arquitectura y conceptos avanzados de Apache Camel

  • Internos del contexto de Camel (CamelContext)
  • Componentes, puntos finales (endpoints), productores y consumidores
  • Gestión del ciclo de vida de las rutas
  • Plantillas de ruta y configuraciones de ruta
  • Inyección de dependencias con Spring Boot y CDI
  • Diseño de aplicaciones modulares

3. Patrones avanzados de integración empresarial

  • Ruteador basado en contenido (Content-Based Router)
  • Ruteador dinámico (Dynamic Router)
  • Lista de destinatarios (Recipient List)
  • Cabecero de enrutamiento (Routing Slip)
  • Divisor y agregador (Splitter and Aggregator)
  • Reordenador (Resequencer)
  • Multidifusión y captura en cable (Multicast and Wire Tap)
  • Distribución-Recopilación (Scatter-Gather)
  • Patrón Saga
  • Consumidor idempotente (Idempotent Consumer)
  • Comprobación de reclamaciones (Claim Check)
  • Patrón del interruptor de circuito (Circuit Breaker)

4. Técnicas avanzadas de enrutamiento

  • Resolución dinámica de puntos finales
  • Enrutamiento condicional y anidado
  • Políticas de ruta (Route policies)
  • Plantillas de ruta (Route templates)
  • Creación dinámica de rutas
  • Recarga de rutas
  • Estrategias de balanceo de carga
  • Punto final de integración de servicios (Service Call EIP)

5. Transformación de datos y procesamiento de mensajes

  • Formatos de datos (JSON, XML, CSV, YAML, Avro)
  • Marshalling y unmarshalling
  • Integración con beans
  • Procesadores y procesadores personalizados
  • Convertidores de tipo
  • Transformaciones XSLT
  • Lenguajes JSONPath, XPath y Simple
  • Soporte para Groovy y scripting

6. Manejo de grandes volúmenes de datos y transmisión (streaming)

  • Procesamiento en flujo continuo
  • Caché de flujos
  • Manejo de archivos grandes
  • Procesamiento por lotes
  • Integración con archivos y FTP
  • Técnicas de optimización de memoria
  • Procesamiento de mensajes de alto volumen

7. Integración asíncrona y distribuida

  • Enrutamiento asíncrono
  • Procesamiento paralelo
  • Componentes SEDA y VM
  • Direct vs. Direct-VM
  • Pools de hilos y concurrencia
  • Procesamiento de mensajes distribuido
  • Consideraciones sobre la presión inversa (back-pressure)

8. Manejo de errores y confiabilidad

  • Cláusula de excepción
  • Canal de cartas muertas (Dead Letter Channel)
  • Controlador de errores predeterminado
  • Controlador de errores transaccionales
  • Estrategias de reintento
  • Políticas de reentrega
  • Transacciones compensatorias
  • Construcción de integraciones tolerantes a fallos

9. Transacciones y confiabilidad de mensajes

  • Transacciones locales y distribuidas
  • Transacciones XA
  • Entrega exactamente una vez (Exactly-once delivery)
  • Implementación de idempotencia
  • Entrega garantizada de mensajes
  • Gestión de transacciones con Spring

10. Ajuste de rendimiento y optimización

  • Cuellos de botella en el rendimiento
  • Técnicas de optimización de rutas
  • Selección eficiente de componentes
  • Optimización de productores y consumidores
  • Estrategias de caché
  • Ajuste de pools de hilos
  • Evaluación comparativa (benchmarking) de aplicaciones Camel

11. Integración de Apache Camel con sistemas de mensajería

  • Integración JMS
  • ActiveMQ
  • RabbitMQ
  • AMQP
  • Apache Kafka
  • MQTT
  • Colas de mensajes vs. transmisión de eventos
  • Patrones de mensajería confiable

12. Integración de servicios REST y web

  • DSL de REST (REST DSL)
  • Consumidores y productores de REST
  • Integración SOAP
  • Apache CXF
  • Orquestación de API REST
  • Integración con OpenAPI
  • Versión de APIs

13. Integración de bases de datos y fuentes de datos

  • Componente JDBC
  • Componente SQL
  • Integración JPA
  • Gestión de transacciones
  • Consultas periódicas a bases de datos (Polling)
  • Escenarios ETL
  • Conceptos de captura de cambios de datos (CDC)

14. Integración en la nube y microservicios

  • Apache Camel con Spring Boot
  • Visión general de Camel K
  • Visión general de Camel Quarkus
  • Conceptos de implementación en Kubernetes
  • Integraciones contenedorizadas
  • Patrones de integración nativos de la nube

15. Seguridad en Apache Camel

  • Autenticación y autorización
  • Configuración SSL/TLS
  • Servicios REST seguros
  • Gestión de secretos
  • Cifrado de datos
  • Integración de OAuth y JWT

16. Monitoreo, registro de eventos (logging) y observabilidad

  • Comprobaciones de estado de Camel (Camel Health Checks)
  • Recolección de métricas
  • Monitoreo JMX
  • Integración con Micrometer
  • Visión general de OpenTelemetry
  • Registro estructurado (Structured logging)
  • Trazabilidad distribuida

17. Pruebas de aplicaciones Apache Camel

  • Pruebas unitarias con Camel Test
  • Puntos finales simulados (Mock endpoints)
  • Pruebas de integración
  • Pruebas de aplicaciones Spring Boot
  • Visión general de Testcontainers
  • Mejores prácticas para pruebas automatizadas

18. Solución de problemas y depuración

  • Diagnóstico de problemas de enrutamiento
  • Depuración de rutas
  • Análisis de registros (Log analysis)
  • Diagnóstico de rendimiento
  • Problemas comunes de integración
  • Resolución de problemas de implementación

19. Escenarios reales de integración

  • Integración de aplicaciones empresariales
  • Flujos de trabajo de procesamiento de archivos
  • Arquitecturas impulsadas por eventos
  • Mediación de APIs
  • Estrategias de migración de sistemas
  • Ejemplos de integración híbrida

20. Mejores prácticas y directrices de diseño

  • Diseño de rutas mantenibles
  • Plantillas de ruta reutilizables
  • Gestión de configuraciones
  • Estándares de documentación
  • Consideraciones de gobernanza
  • Recomendaciones para implementación en producción

21. Taller práctico y resumen

  • Construcción de una solución completa de integración empresarial
  • Aplicación de múltiples patrones de integración empresarial (EIP)
  • Integración de mensajería, bases de datos y servicios REST
  • Ejercicio de ajuste de rendimiento
  • Revisión de conceptos clave
  • Preguntas y respuestas
  • Siguientes pasos y recursos adicionales de aprendizaje

Requerimientos

  • Buen conocimiento de los fundamentos de Apache Camel
  • Experiencia en programación e integración con Java
  • Experiencia con patrones y técnicas de integración

Público objetivo

  • Desarrolladores
  • Arquitectos de integración
  • Administradores de sistemas
 21 Horas

Número de participantes


Precio por participante

Reseñas (1)

Próximos cursos

Categorías Relacionadas