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 Enterprise Integration Patterns (EIPs).
  • Novedades en las versiones recientes de Apache Camel.
  • Mejores prácticas para proyectos de integración empresarial.

2. Arquitectura de Apache Camel y conceptos avanzados

  • Internos de CamelContext.
  • Componentes, extremos, productores y consumidores.
  • Gestión del ciclo de vida de las rutas.
  • Plantillas de ruta y configuraciones de rutas.
  • Inyección de dependencias con Spring Boot y CDI.
  • Diseño modular de aplicaciones.

3. Enterprise Integration Patterns avanzados

  • Ruteador basado en contenido (Content-Based Router).
  • Ruteador dinámico (Dynamic Router).
  • Lista de destinatarios (Recipient List).
  • Listado de enrutamiento (Routing Slip).
  • Divisor y Agregador (Splitter and Aggregator).
  • Reordenador (Resequencer).
  • Multidifusión y Tap de cable (Multicast and Wire Tap).
  • Dispersar y Recoger (Scatter-Gather).
  • Patrón Saga.
  • Consumidor idempotente (Idempotent Consumer).
  • Check de reclamo (Claim Check).
  • Patrón del circuito abierto (Circuit Breaker pattern).

4. Técnicas avanzadas de enrutamiento

  • Resolución dinámica de extremos.
  • Enrutamiento condicional y anidado.
  • Políticas de ruta.
  • Plantillas de ruta.
  • Creación dinámica de rutas.
  • Recarga de rutas.
  • Estrategias de equilibrado de carga (Load balancing).
  • EIP de llamada a servicio (Service Call EIP).

5. Transformación de datos y procesamiento de mensajes

  • Formatos de datos (JSON, XML, CSV, YAML, Avro).
  • Marshallado y desmarshallado.
  • 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 datos grandes y transmisión de datos (Streaming)

  • Procesamiento en streaming.
  • Caché de flujos (Stream caching).
  • Gestión 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 frente a Direct-VM.
  • Pools de hilos y concurrencia.
  • Procesamiento distribuido de mensajes.
  • Consideraciones sobre presión inversa (Back-pressure).

8. Manejo de errores y confiabilidad

  • Cláusula de excepción (Exception Clause).
  • Canal de mensaje no entregado (Dead Letter Channel).
  • Gestor de errores predeterminado.
  • Gestor de errores transaccionales.
  • Estrategias de reintento.
  • Políticas de reenvío.
  • 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 y optimización del rendimiento

  • 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.
  • Evaluación (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 frente a transmisión de eventos.
  • Patrones de mensajería confiable.

12. Integración REST y servicios web

  • DSL REST.
  • Consumidores y productores REST.
  • Integración SOAP.
  • Apache CXF.
  • Orquestación de API REST.
  • Integración OpenAPI.
  • Versionado de APIs.

13. Integración de bases de datos y orígenes de datos

  • Componente JDBC.
  • Componente SQL.
  • Integración JPA.
  • Gestión de transacciones.
  • Sondeo (polling) de bases de datos.
  • Escenarios ETL.
  • Conceptos de captura de datos modificados (Change Data Capture).

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 en contenedores.
  • 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 y observabilidad

  • Verificaciones de estado (Health Checks) de Camel.
  • Recolección de métricas.
  • Monitoreo JMX.
  • Integración Micrometer.
  • Visión general de OpenTelemetry.
  • Registro estructurado.
  • Trazabilidad distribuida (Distributed tracing).

17. Pruebas de aplicaciones Apache Camel

  • Pruebas unitarias con Camel Test.
  • Extremos 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.
  • Diagnóstico de rendimiento.
  • Problemas comunes de integración.
  • Resolución de problemas de despliegue.

19. Escenarios de integración del mundo real

  • Integración de aplicaciones empresariales.
  • Flujos de trabajo de procesamiento de archivos.
  • Arquitecturas impulsadas por eventos.
  • Intermediació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 configuración.
  • Estándares de documentación.
  • Consideraciones de gobernanza.
  • Recomendaciones para despliegue 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 Enterprise Integration Patterns.
  • 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 conceptos básicos 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