Conexiuni și fluxuri
Aceste acțiuni vin în familii de câte două sau trei: conectare, trimitere, închidere. Conexiunea rămâne deschisă între cutii, ceea ce permite intercalarea altor apeluri la mijloc.
Tiparul comun
Section titled “Tiparul comun”O acțiune de conexiune are două ieșiri:
| Ieșire | Emisie |
|---|---|
connected | Un semnal, o singură dată, la stabilirea conexiunii |
message | O emisie pentru fiecare mesaj primit |
Ea poartă un nume de conexiune (connectionName). Acțiunile de trimitere și
de închidere desemnează apoi această conexiune prin identificatorul cutiei
(connectionNodeId).
Tiparul clasic:
Conexiune MQTT ──connected──► Cerere HTTP (declanșează acțiunea de business) └────────message─────► Assert (mesajul așteptat a sosit) apoi ──► Închidere conexiune MQTTWebSocket
Section titled “WebSocket”| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Conexiune WebSocket | — | connected, message (orice cadru primit) |
| Trimitere WebSocket | payload | — |
| Închidere conexiune WebSocket | — | — |
| Închidere server WebSocket | — | — |
Vedeți WebSocket.
Socket.IO
Section titled “Socket.IO”| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Conexiune Socket.IO | — | connected, câte un port event:<name> pentru fiecare eveniment declarat și others |
| Trimitere Socket.IO | channel, payload | — |
| Închidere conexiune Socket.IO | — | — |
| Închidere server Socket.IO | — | — |
Este singura acțiune de conexiune ale cărei ieșiri sunt configurabile:
declarați lista evenimentelor care vă interesează și fiecare primește portul său.
Orice eveniment nedeclarat ajunge pe others.
Vedeți Socket.IO.
| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Conexiune MQTT | — | connected, message |
| Publicare MQTT | payload | — |
| Închidere conexiune MQTT | — | — |
Conexiunea se abonează la subiectul cererii; trimiterea publică cu QoS și cu opțiunea de retenție configurate. Vedeți MQTT.
| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Conexiune SSE | — | connected, message |
| Închidere conexiune SSE | — | — |
Numai în recepție: nu există o acțiune de trimitere. Vedeți SSE.
| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Conexiune STOMP | — | connected, message |
| Trimitere STOMP | payload | — |
| Închidere conexiune STOMP | — | — |
Conexiunea emite CONNECT, apoi câte un SUBSCRIBE pentru fiecare abonament
configurat; trimiterea produce un cadru SEND; închiderea, un DISCONNECT.
Vedeți STOMP.
| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Conexiune AMQP | — | connected, message |
| Publicare AMQP | payload | — |
| Închidere conexiune AMQP | — | — |
Conexiunea consumă coada cererii (modul subscribe); publicarea folosește
exchange-ul și cheia sa de rutare. Vedeți AMQP.
| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Abonare Redis | — | connected, message |
| Închidere conexiune Redis | — | — |
Pentru o comandă unitară, folosiți Comandă Redis, care este o acțiune cerere / răspuns — vedeți Cereri și compunere.
| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Consum Kafka | — | connected, message |
| Închidere conexiune Kafka | — | — |
Consumul se abonează prin grupul de consumatori al cererii. Pentru a produce, folosiți Producție Kafka, o acțiune unitară. Vedeți Kafka.
gRPC în flux
Section titled “gRPC în flux”| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Conexiune gRPC | — | connected, message |
| Trimitere gRPC | payload | — |
| Închidere conexiune gRPC | — | — |
Pentru modurile server-stream, client-stream și bidirectional-stream:
trimiterea are sens numai pentru ultimele două, iar închiderea efectuează
semi-închiderea de partea clientului. Un apel unary se face cu Cerere HTTP.
Vedeți gRPC.
Abonamente GraphQL
Section titled “Abonamente GraphQL”| Acțiune | Intrări | Ieșiri |
|---|---|---|
| Abonare GraphQL | — | connected, message |
| Dezabonare GraphQL | — | — |
Vedeți GraphQL.