1.9 KiB
1.9 KiB
| post_title | author | layout | published | post_date | tags | categories | ||||
|---|---|---|---|---|---|---|---|---|---|---|
| Integration series: Messaging | dreat | post | true | 2017-03-26 20:50:50 |
|
|
Last time we spoke about some integration methods we can use.
As we see, there are methods that are not so tight coupled, being able to generate lots of little data packages (like file transfer), easily synchronizable (like shared database), details of storage's structure hidden from applications (unlike shared database) and being able to send data to invoke behavior in other app (like RPI) but with being resistant to failure (unlike RPI).
And here messaging comes to play. The rules are simple: you create message, send it to message channel and someone waiting for this kind of message will get it. While it has some problems on it's own, it is reliable, fequent, fast and asynchronous and.
- Being asynchronous means you won't block process while waiting for the result/answer. Calling app can continue with it's work.
- Decoupling. Messages will be sent to message channel without knowing almost anything about receiver. The common interface are the types of messages sent, not the bidings between apps. It also allows separation integration developement from application developement.
- Frequent, small messages allow applications to behave almost immediatly by sending more messages.