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 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

  • Interna del contexto Camel (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 (EIP)

  • Enrutador basado en contenido (Content-Based Router).
  • Enrutador dinámico (Dynamic Router).
  • Lista de destinatarios (Recipient List).
  • Slip de enrutamiento (Routing Slip).
  • Divisor y agregador (Splitter and Aggregator).
  • Reordenador (Resequencer).
  • Multicast y Wire Tap.
  • Dispersar y recopilar (Scatter-Gather).
  • Patrón Saga.
  • Consumidor idempotente (Idempotent Consumer).
  • Ticket de reclamo (Claim Check).
  • Patrón de circuito eléctrico (Circuit Breaker).

4. Técnicas avanzadas de enrutamiento

  • Resolución dinámica de puntos finales.
  • Enrutamiento condicional y anidado.
  • Políticas de ruta.
  • Plantillas de ruta (Route templates).
  • Creación dinámica de rutas.
  • Recarga de rutas.
  • Estrategias de balanceo de carga.
  • 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).
  • Marshalling y unmarshalling.
  • Integración de beans.
  • Procesadores y procesadores personalizados.
  • Convertidores de tipo.
  • Transformaciones XSLT.
  • Lenguaje JSONPath, XPath y Simple.
  • Soporte para Groovy y scripting.

6. Trabajo con grandes volúmenes de datos y streaming

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

8. Gestión de errores y fiabilidad

  • Bloque Exception.
  • Canal de cartas muertas (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 fiabilidad de mensajes

  • Transacciones locales y distribuidas.
  • Transacciones XA.
  • Entrega exactamente una vez.
  • Implementación de idempotencia.
  • Entrega garantizada de mensajes.
  • Gestión de transacciones con Spring.

10. Ajuste de rendimiento y optimización

\r
  • 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 de aplicaciones Camel.

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

  • Integración JMS.
  • ActiveMQ.
  • RabbitMQ.
  • AMQP.
  • Apache Kafka.
  • MQTT.
  • Mensajería por cola frente a streaming de eventos.
  • Patrones de mensajería fiable.

12. Integración de servicios REST y Web Services

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

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

  • Componente JDBC.
  • Componente SQL.
  • Integración JPA.
  • Gestión de transacciones.
  • Encuestamiento de bases de datos (Polling).
  • Casos ETL (Extracción, Transformación y Carga).
  • Conceptos de captura de datos modificados (CDC).

14. Integración en 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 contenerizadas.
  • 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 de eventos (logging) y observabilidad

  • Comprobaciones de estado de Camel.
  • Recolección de métricas.
  • Monitoreo JMX.
  • Integración Micrometer.
  • Descripción general de OpenTelemetry.
  • Registro estructurado.
  • Trazado distribuido.

17. Pruebas de aplicaciones Apache Camel

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

18. Resolución de problemas y depuración (debugging)

  • Diagnóstico de problemas de enrutamiento.
  • Depuración de rutas.
  • Análisis de registros.
  • Diagnósticos 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 procesamiento de archivos.
  • Arquitecturas basadas en eventos.
  • Mediación de APIs.
  • Estrategias de migración de sistemas.
  • Ejemplos de integración híbrida.

20. Mejores prácticas y guías de diseño

  • Diseño de rutas mantenibles.
  • Plantillas de ruta reutilizables.
  • Gestión de configuración.
  • Estandarización de documentación.
  • Consideraciones de gobernanza.
  • Recomendaciones para despliegues 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 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.

Audiencia 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