Myslím, že hlavní důvod, proč většina blockchainů nepřijala asynchronní provádění, je jednoduchý: když uživatelé vidí, že jejich tx je potvrzeno, očekávají, že výsledek bude k dispozici, protože na něm závisí jejich další akce. Zatímco u odloženého provádění je možné lokálně simulovat výsledek pro nesporný stav (jako jsou přenosy/schválení), jedná se také o druhy tx, které nepřidávají velkou režii k synchronnímu provádění, což činí asynchronní provádění mnohem méně atraktivní alternativou s ohledem na dodatečné náklady na vývoj a podmíněnost zpracování tx na koncovém klientovi (kontrola, zda se tx může dotknout sporného stavu, který není triviální, a rozhodnout se počkat na výsledek z řetězce nebo jej lokálně simulovat).
Keone Hon ⨀
Keone Hon ⨀11. 8. 03:59
Dnes píšu o asynchronním provádění (aka odloženém provádění). To je jedna z "velkých myšlenek" Monády, která se při zpětném pohledu bude zdát zřejmá: že jakmile je určen transakční řád, je určen stav. Možná to nevíte, ale ve většině blockchainů včetně Etherea a Solany se uzly vyhodnocující seznam transakcí (tj. blok) musí v rámci procesu hlasování shodnout také na výsledku tohoto seznamu transakcí (tj. na kořenovém adresáři státu po těchto transakcích). To vyžaduje, aby tyto transakce provedli před tím, než odpoví hlasováním, což samozřejmě značně snižuje množství práce, kterou od nich lze očekávat. Toto očekávání je příliš přísné a je jedním z velkých důvodů, proč je propustnost blockchainu tak omezená.
1,3K