Ponte en Contacto

Temario del curso

1. Introducción a Apache Camel Avanzado

  • Objetivos del curso y descripción general de la arquitectura
  • Revisión de los fundamentos de Apache Camel
  • Repaso de Enterprise Integration Patterns (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 de CamelContext
  • Componentes, puntos finales, 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 modular de aplicaciones

3. Patrones avanzados de integración empresarial

  • Ruteador basado en contenido
  • Ruteador dinámico
  • Lista de destinatarios
  • Deslizamiento de enrutamiento (Routing Slip)
  • Divisor y Agregador
  • Reordenador
  • Multicast y Wire Tap
  • Dispersión-Reunión (Scatter-Gather)
  • Patrón Saga
  • Consumidor idempotente
  • Comprobante de reclamación (Claim Check)
  • Patrón del circuito de ruptura

4. Técnicas avanzadas de enrutamiento

  • Resolución dinámica de puntos finales
  • Enrutamiento condicional y anidado
  • Políticas de ruta
  • Plantillas de ruta
  • Creación dinámica de rutas
  • Recarga de rutas
  • Estrategias de balanceo de carga
  • EIP para llamadas a servicios

5. Transformación de datos y procesamiento de mensajes

  • Formatos de datos (JSON, XML, CSV, YAML, Avro)
  • Serialización y deserialización (Marshalling / 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. Trabajo con grandes volúmenes de datos y transmisión (Streaming)

  • Procesamiento en streaming
  • Caché de streams
  • Gestión de archivos grandes
  • Procesamiento por lotes
  • Integraciones de 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 en paralelo
  • Componentes SEDA y VM
  • Direct vs. Direct-VM
  • Pools de hilos y concurrencia
  • Procesamiento distribuido de mensajes
  • Consideraciones sobre la retroalimentación (Back-pressure)

8. Manejo de errores y fiabilidad

  • Cláusula de excepción
  • Canal de mensajes muertos
  • Controlador de errores predeterminado
  • Controlador de errores transaccionales
  • Estrategias de reintento
  • Políticas de reenvío
  • Transacciones compensatorias
  • Diseño de integraciones tolerantes a fallos

9. Transacciones y fiabilidad de mensajes

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

10. Ajuste de rendimiento y optimización

  • Cuellos de botella de 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
  • Pruebas de rendimiento 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 confiables

12. Integración REST y servicios web

  • DSL para REST
  • Consumidores y productores REST
  • Integración SOAP
  • Apache CXF
  • Orquestación de APIs REST
  • Integración OpenAPI
  • Gestión de versiones de API

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

  • Componente JDBC
  • Componente SQL
  • Integración JPA
  • Gestión de transacciones
  • Sondeo de bases de datos (Polling)
  • Escenarios ETL
  • Conceptos de captura de cambios en datos (CDC)

14. Integración con la nube y microservicios

  • Apache Camel con Spring Boot
  • Descripción general de Camel K
  • Descripción general de Camel Quarkus
  • Conceptos de implementación en Kubernetes
  • Integraciones contenidas (Containerized)
  • 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 OAuth y JWT

16. Monitoreo, registro (Logging) y observabilidad

  • Health Checks de Camel
  • Recopilación de métricas
  • Monitoreo JMX
  • Integración con Micrometer
  • Descripción general de OpenTelemetry
  • Registro estructurado
  • 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
  • Descripció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
  • Diagnóstico de rendimiento
  • Problemas comunes de integración
  • Solución de problemas de implementación

19. Escenarios de integración en el mundo real

  • Integración de aplicaciones empresariales
  • Flujos de trabajo de procesamiento de archivos
  • Arquitecturas impulsadas por eventos
  • Mediación de API
  • 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 la configuración
  • Estandarización de la documentación
  • Consideraciones sobre 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 Enterprise Integration
  • Integración de mensajería, bases de datos y servicios REST
  • Ejercicio de ajuste de rendimiento
  • Revisión de los conceptos clave
  • Preguntas y respuestas
  • Siguientes pasos y recursos de aprendizaje adicionales

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