Intrati in legatura

Schița de curs

1. Introducere în Advanced Apache Camel

  • Obiectivele cursului și prezentarea generală a arhitecturii
  • Reconsiderarea fundamentelor Apache Camel
  • Recapitularea Enterprise Integration Patterns (EIPs)
  • Ce este nou în versiunile recente ale Apache Camel
  • Best practices pentru proiectele de integrare enterprise

2. Arhitectura și conceptele avansate Apache Camel

  • Internalele CamelContext
  • Componente, endpoint-uri, producători și consumatori
  • Gestionarea ciclului de viață al rutelor
  • Șabloane de rute și configurații de rute
  • Injecția dependențelor cu Spring Boot și CDI
  • Proiectarea modulară a aplicațiilor

3. Enterprise Integration Patterns avansate

  • Content-Based Router
  • Dynamic Router
  • Recipient List
  • Routing Slip
  • Splitter și Aggregator
  • Resequencer
  • Multicast și Wire Tap
  • Scatter-Gather
  • Saga Pattern
  • Idempotent Consumer
  • Claim Check
  • Pattern-ul Circuit Breaker

4. Tehnici avansate de rutare

  • Rezolvarea dinamică a endpoint-urilor
  • Rutare condiționată și imbricată
  • Politicile rutelor
  • Șabloane de rute
  • Crearea dinamică a rutelor
  • Reîncărcarea rutelor
  • Strategii de echilibrare a încărcării
  • EIP Service Call

5. Transformarea datelor și procesarea mesajelor

  • Formate de date (JSON, XML, CSV, YAML, Avro)
  • Marshalling și unmarshalling
  • Integrarea Beans
  • Procesoare și procesoare personalizate
  • Convertizoare de tipuri
  • Transformări XSLT
  • JSONPath, XPath și limbajul Simple
  • Suport pentru Groovy și scripting

6. Lucrul cu date mari și streaming

  • Procesare în flux (streaming)
  • Stocare în cache a fluxurilor
  • Gestionarea fișierelor mari
  • Procesare batch
  • Integrări File și FTP
  • Tehnici de optimizare a memoriei
  • Procesarea mesajelor în volum mare

7. Integrare sincronă și distribuită

  • Rutare asincronă
  • Procesare paralelă
  • Componente SEDA și VM
  • Direct versus Direct-VM
  • Poloane de fire (thread pools) și concurență
  • Procesare distribuită a mesajelor
  • Aspecte legate de back-pressure

8. Gestionarea erorilor și fiabilitatea

  • Except clause
  • Dead Letter Channel
  • Error Handler implicit
  • Error Handler pentru tranzacții
  • Strategii de reîncercare
  • Politici de redirecționare
  • Tranzacții compensatorii
  • Crearea integrărilor rezistente la erori (fault-tolerant)

9. Tranzacții și fiabilitatea mesajelor

  • Tranzacții locale și distribuite
  • Tranzacții XA
  • Livrare exact-once
  • Implementarea idempotenței
  • Livrare garantată a mesajelor
  • Gestionarea tranzacțiilor cu Spring

10. Tuning-ul performanței și optimizarea

  • Gâturi de sticlă ale performanței
  • Tehnici de optimizare a rutelor
  • Alegerea eficientă a componentelor
  • Optimizarea producătorilor și consumatorilor
  • Strategii de cache
  • Tuning-ul poloanelor de fire (thread pools)
  • Benchmarking al aplicațiilor Camel

11. Integrarea Apache Camel cu sistemele de mesagerie

  • Integrare JMS
  • ActiveMQ
  • RabbitMQ
  • AMQP
  • Apache Kafka
  • MQTT
  • Coduri de mesaje versus streaming de evenimente
  • Pattern-uri de mesajare fiabilă

12. Integrarea REST și a serviciilor web

  • REST DSL
  • Consumatori și producători REST
  • Integrare SOAP
  • Apache CXF
  • Orchestrarea API-urilor REST
  • Integrarea OpenAPI
  • Versiunile API-urilor

13. Integrarea bazelor de date și a surselor de date

  • Componenta JDBC
  • Componenta SQL
  • Integrare JPA
  • Gestionarea tranzacțiilor
  • Interogarea periodică (polling) a bazelor de date
  • Scenarii ETL
  • Concepte privind Change Data Capture

14. Integrarea cloud și a microserviciilor

  • Apache Camel cu Spring Boot
  • Prezentare generală Camel K
  • Prezentare generală Camel Quarkus
  • Concepte de implementare pe Kubernetes
  • Integrări containerizate
  • Pattern-uri de integrare cloud-native

15. Securitatea în Apache Camel

  • Autentificare și autorizare
  • Configurare SSL/TLS
  • Servicii REST securizate
  • Gestionarea secretelor
  • Encriptarea datelor
  • Integrarea OAuth și JWT

16. Monitorizare, jurnalizare și observabilitate

  • Health Checks Camel
  • Colectarea metricilor
  • Monitorizare JMX
  • Integrare Micrometer
  • Prezentare generală OpenTelemetry
  • Jurnalizare structurată
  • Tracing distribuit

17. Testarea aplicațiilor Apache Camel

  • Testare unitară cu Camel Test
  • Endpoint-uri Mock
  • Testare de integrare
  • Testarea aplicațiilor Spring Boot
  • Prezentare generală Testcontainers
  • Best practices pentru testarea automatizată

18. Diagnosticare și depanare

  • Diagnoza problemelor de rutare
  • Depanarea rutelor
  • Analiza jurnalelor
  • Diagnosticarea performanței
  • Probleme comune de integrare
  • Rezolvarea problemelor de implementare

19. Scenarii reale de integrare

  • Integrarea aplicațiilor enterprise
  • Fluxuri de procesare a fișierelor
  • Arhitecturi bazate pe evenimente
  • Mediere API-uri
  • Strategii de migrare a sistemelor
  • Exemple de integrare hibridă

20. Best practices și ghiduri de design

  • Proiectarea rutelor pentru mentenabilitate
  • Șabloane de rute reutilizabile
  • Gestionarea configurației
  • Standarde de documentare
  • Aspecte privind guvernanța
  • Recomandări pentru implementarea în producție

21. Workshop practic și rezumat

  • Construirea unei soluții complete de integrare enterprise
  • Aplicarea mai multor Enterprise Integration Patterns
  • Integrarea sistemelor de mesagerie, bazelor de date și a serviciilor REST
  • Exercițiu de tuning al performanței
  • Revisuirea conceptelor cheie
  • Întrebări și răspunsuri
  • Următorii pași și resurse suplimentare de învățare

Cerințe

  • Bune cunoștințe de bază privind Apache Camel
  • E experiență în programarea și integrarea Java
  • E experiență cu pattern-uri și tehnici de integrare

Public țintă

  • Dezvoltatori
  • Arhitecți de integrare
  • Administratori de sisteme
 21 Ore

Numărul de participanți


Pret per participant

Mărturii (1)

Cursuri viitoare

Categorii înrudite