為了實現更即時的運行,我添加了一個 Tenderly Alert。可惜的是,它無法直接喚醒 GitHub Actions,所以我必須加入一個中間的 Cloudflare Worker。
但後來我想,為什麼不乾脆整體遷移到 Cloudflare Worker 呢?最終的架構是一個 Worker 運行一個靜態頁面。然後,當有新事務到達時,Tenderly 可以透過 Webhook 來觸發它。
它會將新交易索引到 D1 SQL 資料庫中,並重建一個 JSON 儀表板,然後透過鍵值對將其作為 API 提供給靜態頁面。
我還新增了一個每日定時任務作為備用方案,以防 Webhook 沒有觸發。整個架構非常簡單,運作良好,而且無需維護。
你也可以使用佇列來擴展到更複雜的工作流程。總的來說,我發現 Cloudflare 的基本功能非常容易使用。
對於 Web3 Webhook,我知道的選項有 Tenderly(免費套餐提供 3 個警報)和 Alchemy(免費套餐提供 5 個警報)。
twitter.com/banteg/status/2040...