低延遲執行事件 今天,我們正在記錄Monad中的執行事件系統,該系統允許開發者構建高性能應用程序,通過共享內存隊列從Monad節點接收最低延遲的事件數據。 要消費這些實時數據,您需要使用提供的SDK編寫C、C++或Rust軟件,並在運行Monad全節點的主機上運行它。 以下是與其他類似系統的簡要比較: - Geth實時追蹤 - 基於"hook"的API:您的代碼作為插件加載到Geth節點中,並在執行期間同步運行(通過回調) - Reth ExEx - 基於異步函數的API:您的代碼加載到Reth節點中;執行在事後看到事件,而不是同步的 - Solana Geyser - 基於"hook"的API,一個在Solana驗證器內部運行的插件,並在執行期間調用回調 這三者都與執行事件的方法不同。在執行事件中: - 您看到事件是"實時發生的",就像Geth實時追蹤器和Solana Geyser一樣。與這些方法不同,您的代碼不是作為插件在執行引擎內部運行,而是在一個單獨的進程中並行運行(大約延遲一微秒) - 像Geth實時追蹤器一樣(但與Reth的ExEx不同),您看到每個交易的"片段" - 每個日誌、每個餘額變更等 - 作為單獨的事件 - 與Geth實時追蹤器或Geyser不同,您不安裝"hooks"並接收回調;相反,您持續輪詢新的事件記錄,迭代返回給您的任何新事件(並忽略您不感興趣的事件) - 由於系統基於共享內存環形緩衝區,如果您的消費者太慢,您可能會丟失數據 -- 您必須跟上!