Czym jest komunikacja
W naszym życiu komunikujemy się na różne sposoby. Prowadzimy rozmowy, wymieniamy się mailami, smsami. Przychodzi nam to naturalnie i nie potrzebujemy zastanawiać się nad tym jakiego typu komunikacji używamy.
A występują dwa typy komunikacji.
Komunikacja synchroniczna.
Komunikacja asynchroniczna.
Synchroniczna występuję wtedy kiedy prowadzimy żywą rozmowę, oczekujemy na odpowiedź drugiej strony od razu.
Asynchroniczna występuje kiedy wysyłamy maila z zapytaniem o ofertę i nie oczekujemy na natychmiastową odpowiedź tylko możemy ją otrzymać w innym momencie.
Identyczne typy komunikacji występują w ramach integracji systemów.
Ale czy oznaczają to samo? Sprawdźmy 🙂
Komunikacja synchroniczna
Ramach korzystania z systemów informatycznych podstawową funkcjonalnością jest poproszenie o dane i otrzymanie żądanych informacji.
Kiedy logujemy się do bankowości internetowej to chcemy się dowiedzieć jaki jest nasz stan konta. Właśnie w takich przypadkach wykorzystywana jest komunikacja synchroniczna.
Działa ona na zasadzie wysłania żądania(request) i otrzymania odpowiedzi(response). A przynajmniej oczekiwania otrzymania odpowiedzi, bo nie zawsze jest pewne, że taką odpowiedź otrzymamy(nie zawsze wszystkie systemy działają ;).
Komunikacja synchroniczna występuję wtedy kiedy po wysłaniu informacji oczekujemy odpowiedzi. Proces, który realizujemy nie może być kontynuowany dopóki odpowiedź nie przyjdzie.
Kiedy zalogujemy się do bankowości internetowej, w przypadku kiedy nie zostanie nam zwrócony stan konta, nie będziemy mogli wykonać przelewu, bo nie będzie można zweryfikować, czy faktycznie posiadamy odpowiednie środki na koncie.
Komunikacja asynchroniczna
Jak możecie się domyślać, komunikacja asynchroniczna jest przeciwieństwem komunikacji synchronicznej.
W tym przypadku kiedy wysyłamy informację do danego systemu nie oczekujemy na odpowiedź i kontynuujemy nasz proces.
Przykładem takiej komunikacji może być po prostu wysłanie maila, ale też naciśnięcie przycisku wygeneruj raport. Zostanie wysłana prośba, system zbierze odpowiednie informacje z innych systemów, zagreguje je i dopiero wtedy wyśle nam raport na maila.
Komunikacja asynchroniczna wykorzystywana jest także kiedy w naszej architekturze wykorzystujemy systemu kolejkowe, które przyjmują takie komunikaty i w odpowiednim czasie propagują je do odpowiednich systemów.
Podsumowanie
Dwa typy komunikacji, dwa różne zastosowania.
Nie ma lepszej, czy gorszej komunikacji. Występuje tylko bardziej odpowiednia komunikacja dla danego przypadku biznesowego.
Trzeba pamiętać i rozważać możliwości używania konkretnego typu komunikacji dla naszego rozwiązania.
Chcesz się ze mną skontaktować.