Integrace systémů — pojmy a praxeIntegrace systémů: jak propojit ERP, CRM, e-shop a další aplikace
Klíčové pojmy okolo systémové integrace — od REST/GraphQL API přes iPaaS, event-driven architekturu a webhooks po EAI patterns, security a monitoring.
Co je integrace systémů
Systémová integrace propojuje izolované aplikace (ERP, CRM, e-shop, účetnictví, sklad, HR, BI) tak, aby si vyměňovaly data automaticky, konzistentně a v reálném čase. Cíl: jeden zdroj pravdy, eliminace ručního přepisování, zrychlení procesů a možnost end-to-end automatizace napříč celou firmou.
API integrace — REST, GraphQL, gRPC
REST API je standard pro většinu integrací (HTTP, JSON, stateless). GraphQL umožňuje klientovi vybrat přesně potřebná pole — vhodné pro mobilní apky a kompozitní UI. gRPC (binární protokol, HTTP/2) je preferován pro vysoce výkonné mikroservisy. OpenAPI/Swagger specifikace umožňuje generování klientů a dokumentace.
iPaaS — Integration Platform as a Service
iPaaS (Make, Zapier, n8n, Workato, Boomi, MuleSoft, Tray.io) je cloudová platforma pro vizuální tvorbu integrací bez kódu nebo s minimem kódu. Nabízí stovky konektorů, transformace, scheduling, retry, error handling a monitoring. Vhodné pro 80 % business integrací — rychlé, levné, snadno udržovatelné.
Event-driven architektura a message brokery
Místo synchronního API request/response posílají systémy události (OrderCreated, PaymentReceived) na message broker (Kafka, RabbitMQ, AWS SNS/SQS, Azure Service Bus, Google Pub/Sub). Konzumenti reagují asynchronně. Výhody: decoupling, škálovatelnost, odolnost, audit log. Klíčové pro mikroservisní architekturu a real-time scénáře.
Webhooks vs polling
Polling pravidelně dotazuje API („máš něco nového?") — jednoduché, ale neefektivní a se zpožděním. Webhooks obrátí směr: zdroj sám POST volá callback URL při události (nová objednávka, platba). Real-time, minimální zátěž. Vyžaduje veřejný endpoint, idempotenci, retry s exponential backoff a HMAC podpis pro bezpečnost.
ESB a SOA — enterprise pattern
Enterprise Service Bus (MuleSoft Anypoint, IBM Integration Bus, WSO2, Apache ServiceMix) je centrální sběrnice pro routing, transformaci a orchestraci mezi monolitickými systémy ve velkých podnicích. Moderní trend přechází k decentralizovaným event meshům a API gateway + service mesh — ESB se hodí pro legacy s SOAP/XML.
EAI integration patterns
Klasické vzory (Hohpe & Woolf): Message Channel, Content-Based Router, Message Translator, Aggregator, Splitter, Saga (distributed transaction), Outbox pattern, CQRS. Apache Camel a Spring Integration tyto vzory implementují přímo. Znalost vzorů zkracuje design integrací z týdnů na hodiny.
Data transformace a mapování
Mezi systémy se liší formáty (JSON ↔ XML ↔ CSV ↔ EDI), schémata a sémantika (currency, datum, kódy). Transformace: JSONata, JOLT, XSLT, jq, kustomizované funkce v iPaaS. Mapování by mělo být verzované, testované a dokumentované — chyba v mapě = tichá ztráta dat napříč procesem.
Bezpečnost integrací — OAuth2, mTLS, API keys
OAuth 2.0 / OIDC pro user kontext, API keys pro service-to-service (s rotací), mTLS pro zero-trust, JWT pro stateless autorizaci. API Gateway (Kong, Apigee, AWS API Gateway, Azure APIM) řeší rate limiting, throttling, IP whitelist, WAF. Logování bez citlivých dat a audit trail jsou nezbytné pro compliance.
Error handling, retry a idempotence
Síťové chyby a timeouty jsou normální — integrace musí mít retry s exponential backoff + jitter, dead letter queue pro neopravitelné chyby a idempotentní operace (opakované volání = stejný výsledek). Klíč: idempotency key na klientovi, deduplikace na serveru, distributed tracing (OpenTelemetry) pro debugging.
Monitoring a observability
Integrace bez monitoringu je černá skříňka. Sbírej metriky (success rate, p95 latence, throughput), logy (strukturované, korelované přes trace ID), tracing (Jaeger, Zipkin, Datadog, New Relic). Alerty na SLO porušení, failure rate, lag konzumentů. Dashboard pro byznys: počet zpracovaných objednávek, čas zpracování, incidenty.
Typické integrační scénáře v praxi
E-shop → ERP (objednávky, sklady, fakturace), CRM → marketing automation (segmenty, kampaně), HR → účetnictví (mzdy), POS → BI (real-time prodeje), IoT → analytika (telemetrie), banka → účetnictví (transakce), kurýr → e-shop (tracking). Každý scénář má jiné požadavky na latenci, spolehlivost a objem — výběr architektury podle nich.