Co oznacza „Asynchroniczny” ?

477

Asynchroniczny oznacza brak jednoczesności lub nie dzieje się w tym samym czasie lub prędkości. W informatyce asynchronia oznacza występowanie zdarzeń niezależnych od programu głównego.

W systemie asynchronicznym operacje nie są koordynowane przez globalny sygnał zegara, ale raczej zdarzenia (zmiany w systemie). Niezawodne działanie systemów asynchronicznych nie zależy od sygnałów zewnętrznych ani komunikatów.

Systemy asynchroniczne są często projektowane z wykorzystaniem struktury modułowej. W takich systemach każdy moduł może działać niezależnie i może komunikować się z innymi modułami. Te połączone ze sobą moduły razem tworzą razem działający system.

Komunikacja asynchroniczna ma miejsce, gdy dane mogą być przesyłane nieregularnie, zamiast w stałym strumieniu. Typowe przykłady to e-maile lub fora internetowe, na których uczestnicy wysyłają wiadomości w różnych momentach.

Łańcuchy blokowe mogą być sieciami asynchronicznymi lub półsynchronicznymi.

Sieci asynchroniczne nie dostarczają węzłom żadnych informacji zwrotnych na temat statusu wysyłanych informacji, co może prowadzić do tego, że węzły mają różne poglądy na ogólny stan sieci. Zasadniczo węzły nie muszą czekać, aż inne węzły otrzymają swoje wiadomości, co może zwiększyć przepustowość transakcji.

Sieci półsynchroniczne mają na celu zagwarantowanie, że nigdy nie nastąpi podział w globalnym stanie sieci. Jeśli sieć zostanie podzielona na partycje, konsensus między węzłami spowolni, dopóki nie zostanie przywrócony.

Asynchroniczne lub półsynchroniczne sieci blockchain można zaprojektować tak, aby priorytetem była spójność lub dostępność. Jeśli sieć chce nadać priorytet dostępności, wszystkie transakcje zostaną dodane bez przestojów. Jeśli sieć chce nadać priorytet spójności, niektóre transakcje mogą nie zostać przetworzone lub wstrzymane, dopóki wszystkie poprzednie transakcje nie zostaną potwierdzone.

Niektóre projekty blockchain wykorzystują implementację bizantyjskiej tolerancji błędów (BFT) o nazwie Asynchroniczna bizantyjska tolerancja błędów (aBFT). Matematycznie gwarantuje osiągnięcie konsensusu, nawet jeśli atakujący kontroluje prawie jedną trzecią sieci. Asynchroniczny w tym kontekście oznacza, że ​​nie przyjęto żadnych założeń dotyczących czasu.