Popularne tematy
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.

Keone Hon ⨀
współzałożyciel / GM @monad 💜
Wydarzenia Wykonania o Niskiej Latencji
Dziś dokumentujemy system Wydarzeń Wykonania w Monad, który pozwala deweloperom budować aplikacje o wysokiej wydajności, które otrzymują dane o najniższej latencji z węzła Monad za pośrednictwem kolejki pamięci współdzielonej.
Aby konsumować te dane w czasie rzeczywistym, piszesz oprogramowanie w C, C++ lub Rust, korzystając z dostarczonego SDK, i uruchamiasz je na hoście działającym jako pełny węzeł Monad.
Oto krótka porównanie z innymi takimi systemami:
- Geth Live Tracing - API oparte na "hookach": twój kod jest ładowany do węzła Geth jako wtyczka i jest uruchamiany synchronicznie (poprzez wywołania zwrotne) podczas wykonania.
- Reth ExEx - API oparte na asynchronicznych funkcjach: twój kod jest ładowany do węzła Reth; wykonanie widzi wydarzenia po fakcie, a nie synchronicznie.
- Solana Geyser - API oparte na "hookach", wtyczka, która działa wewnątrz walidatora Solana i wywołuje wywołania zwrotne podczas wykonania.
Wszystkie trzy różnią się od podejścia Wydarzeń Wykonania. W Wydarzeniach Wykonania:
- Widzisz wydarzenia "na bieżąco", jak w Geth Live Tracer i Solana Geyser. W przeciwieństwie do tych podejść, twój kod nie działa jako wtyczka wewnątrz silnika wykonawczego, ale równolegle (około jedną mikrosekundę później) w osobnym procesie.
- Podobnie jak w Geth Live Tracer (ale w przeciwieństwie do Reth's ExEx), widzisz każdy "element" transakcji - każdy log, każda zmiana salda itp. - jako osobne wydarzenie.
- W przeciwieństwie do Geth Live Tracer lub Geyser, nie instalujesz "hooków" i nie otrzymujesz wywołań zwrotnych; zamiast tego ciągle sprawdzasz nowe rekordy wydarzeń, iterując przez wszelkie nowe wydarzenia, które są ci zwracane (i ignorując wydarzenia, którymi nie jesteś zainteresowany).
- Ponieważ system oparty jest na współdzielonych buforach pamięci ring, możesz stracić dane, jeśli twój konsument jest zbyt wolny -- musisz dotrzymać kroku!
52,8K
v0.11.1 zostało wdrożone na testnet-2
Znaczące zmiany w zachowaniu:
- Staking
- Logika salda rezerwy
- EIP-7702
- Przepricing opcode'ów
- Podniesienie limitu gazu bloku z 150M do 200M (z 375Mgas/s do 500Mgas/s)
- Dynamiczna opłata podstawowa zgodnie z Początkową Propozycją Specyfikacji Monad (MISP) + podniesienie minimalnej opłaty podstawowej z 50 MON-gwei do 100 MON-gwei
- SDK zdarzeń wykonawczych
- EIP-2935 (historyczne hashe bloków w stanie) + bufor haszy bloków
- EIP-7951: prekompilacja P256VERIFY
- Rozszerzenie wsparcia dla eth_call dla preStateTracer i stateDiffTracer z debug_traceCall
Znaczące zmiany wydajności:
- Złagodzona walidacja scalania - optymalizacja mająca na celu zmniejszenie liczby ponownych wykonania
- Cache jądra dla odczytów i zapisów bazy danych
- Ulepszenie pamięci podręcznej węzła RPC Db i ograniczenie jej do pamięci
To ogromna aktualizacja, a jest jeszcze wiele do powiedzenia na temat każdej z tych zmian!
Następny przystanek: wdrożenie na testnet (testnet-1)
211,39K
Najlepsze
Ranking
Ulubione