I task di Ultra Pipeline sono utilizzati per implementare integrazioni di servizi web in tempo reale che richiedono tempi di risposta previsti prossimi a pochi secondi. Nella prima serie di post illustrerò alcuni degli aspetti chiave della progettazione di Ultra Pipeline. Nella seconda serie di post mi concentrerò sul monitoraggio di questi task a bassa latenza.
Poiché gli strumenti di Ultra Pipelines sono analoghi all'architettura di richiesta/risposta dei servizi Web, nella progettazione di Ultra Pipelines in SnapLogic occorre considerare i seguenti aspetti.
Numero di visualizzazioni:
Ultra Pipelines può supportare una combinazione di viste di ingresso e di uscita:
- Nessuna vista di ingresso non connessa, nessuna vista di uscita non connessa - Sebbene sia una combinazione rara, questa struttura potrebbe essere utilizzata in un costrutto ascoltatore-consumatore. Con 0 viste di ingresso e 0 di uscita, è possibile utilizzare una Ultra Pipeline sempre in esecuzione per interrogare e consumare i documenti da un endpoint, senza richiedere l'alimentazione dei documenti da parte del feed-master.
Caso d'uso: Progettare un meccanismo di polling per l'acquisizione di modifiche utilizzando l'Idoc Listener Snap e aggiornare la tabella Master Data con le modifiche. Poiché i documenti non vengono ricevuti dal feed-master, la vista di uscita della pipeline può essere chiusa.
- Una vista di ingresso non collegata, una o più viste di uscita non collegate - Il design più popolare di Ultra Pipeline è un costrutto semplice di richiesta-risposta che può essere usato come livello di accesso ai dati per i servizi web in tempo reale. Questo design trasforma una pipeline in un lavoro sempre in esecuzione; i documenti vengono forniti alla pipeline tramite un feed-master che mantiene una coda di documenti, vengono analizzati dalla pipeline e le risposte vengono restituite attraverso il feed-master al chiamante.
Caso d'uso 1: Progettare API in tempo reale per servizi web on-premises da utilizzare in cloud. La pipeline sottostante utilizza le informazioni contenute nel documento in arrivo per convalidare l'utente, analizzare la richiesta, chiamare un server applicativo on-premises e restituire la risposta. Per un'elaborazione robusta, alla pipeline è stata aggiunta la capacità di gestire gli errori e una vista di output aggiuntiva per restituire gli errori in caso di fallimento.
Caso d'uso 2: È possibile definire un endpoint consumatore utilizzando lo snap JMS Producer per consumare i documenti dal feed di dati, creando una Ultra Pipeline con 1 vista di ingresso. Poiché la funzionalità del feed-master si basa su un framework di richiesta-risposta, per ogni documento di richiesta inviato a un'istanza del task Ultra Pipeline, il feed-master deve ricevere una risposta, il che implica la presenza di almeno una vista di output. La pipeline Ultra mostrata di seguito legge i dati da un documento di input, li analizza e li scrive sulla coda JMS; una copia della risposta viene restituita al chiamante.
Nel prossimo post di questa serie, passerò in rassegna i tipi di viste disponibili per Ultra Pipelines. Tratterò poi la gestione degli errori e delle eccezioni e la gestione e il monitoraggio delle prestazioni.
Prossimi passi: Date un'occhiata alle nostre risorse video per vedere alcune interessanti demo di SnapLogic e contattateci se siete interessati a saperne di più su SnapLogic Elastic Integration Platform.