Sự kiện thực thi độ trễ thấp Hôm nay, chúng tôi đang tài liệu hóa hệ thống Sự kiện thực thi trong Monad, cho phép các nhà phát triển xây dựng các ứng dụng hiệu suất cao nhận dữ liệu sự kiện độ trễ thấp nhất từ một nút Monad thông qua hàng đợi bộ nhớ chia sẻ. Để tiêu thụ dữ liệu thời gian thực này, bạn viết phần mềm bằng C, C++ hoặc Rust sử dụng SDK được cung cấp, và chạy nó trên một máy chủ đang chạy một nút đầy đủ của Monad. Dưới đây là một so sánh ngắn gọn với các hệ thống tương tự: - Geth Live Tracing - API dựa trên "hook": mã của bạn được tải vào nút Geth như một plugin, và được chạy đồng bộ (thông qua các callback) trong quá trình thực thi - Reth ExEx - API dựa trên hàm bất đồng bộ: mã của bạn được tải vào một nút Reth; quá trình thực thi thấy các sự kiện sau khi xảy ra thay vì đồng bộ - Solana Geyser - API dựa trên "hook", một plugin chạy bên trong một trình xác thực Solana và gọi các callback trong quá trình thực thi Cả ba hệ thống này đều khác với cách tiếp cận Sự kiện thực thi. Trong Sự kiện thực thi: - Bạn thấy các sự kiện "khi chúng xảy ra", giống như trong Geth Live Tracer và Solana Geyser. Không giống như những cách tiếp cận này, mã của bạn không chạy như một plugin bên trong động cơ thực thi, mà chạy song song (khoảng một micro giây sau) trong một quy trình riêng biệt - Giống như Geth Live Tracer (nhưng không giống như ExEx của Reth), bạn thấy mỗi "mảnh" của giao dịch - mỗi nhật ký, mỗi thay đổi số dư, v.v. - như một sự kiện riêng biệt - Không giống như Geth Live Tracer hoặc Geyser, bạn không cài đặt "hooks" và nhận các callback; thay vào đó, bạn liên tục kiểm tra các bản ghi sự kiện mới, lặp qua bất kỳ sự kiện mới nào được trả về cho bạn (và bỏ qua các sự kiện mà bạn không quan tâm) - Bởi vì hệ thống dựa trên các bộ đệm vòng bộ nhớ chia sẻ, bạn có thể mất dữ liệu nếu người tiêu thụ của bạn quá chậm -- bạn phải theo kịp!