← 返回
Apr 2026 The Symbol Syndicate | Anthony’s Engineering Blog

Apr 2026 The Symbol Syndicate | Anthony’s Engineering Blog

2026年4月 Anthony’s Engineering Blog

開啟 Markdown

分享這篇文章

2026年4月的部落格(英文)請見這裡

https://thesymbolsyndicate.notion.site/April-2026-3e8a7f7eb5e480208ba0c6c9b6f75290

2026年4月 Anthony’s Engineering Blog(日文翻譯)

4月感覺是將未完成的部分逐步變成實用 Explorer 後端功能的一個月。模組和交易結構等部分工作從3月就已開始,而4月則對這些部分進行了審查、重構和合併,並將它們連接成實際的 REST 端點。

拉取器(資料擷取與同步程序)需要處理區塊中的所有交易類型,而 REST 端則需要清楚的端點,以便依雜湊查詢交易以及顯示帶有篩選條件的交易清單。在這個過程中,還進行了大量 rebase、審查回饋處理、重構及測試更新。NEM Explorer 後端就是這樣逐步完善起來的。 🦾

主要工作概述

  • 完成並合併了馬賽克模組。
  • 完成了從區塊處理交易的工作。
  • 新增了 /transaction/<hash> 和支援多個篩選條件的 /transactions 清單端點。
  • 在 lightapi/python 中新增了對未確認交易的支援。
  • 在本機驗證了拉取器在 NEM 測試網上的同步。

各項工作詳情

馬賽克模組

  • 馬賽克模組的開發始於3月,因此4月主要用於處理審查回饋、重構和合併。
  • 重構了馬賽克、馬賽克清單以及富豪榜的 REST 端點。
  • 新增了馬賽克富豪榜的單元測試,確認端點能夠正常運作。
  • 隨著這些 PR 的合併,馬賽克模組已經完成。

交易拉取器

  • 4月重點完成了交易拉取器。
  • 為拉取器新增了處理區塊中所有交易類型的功能。
  • 修復了無法從傳送者公開金鑰正確轉換出 sender_address 的問題。
  • 多重簽章的內部交易可透過交易雜湊查詢,因此刪除了不必要的內部交易 ID 邏輯。
  • 這部分工作讓我更深入地理解了交易資料應如何組織,以便儲存和後續查詢。
  • 經過多輪回饋和重構,交易拉取器模組終於合併了。

交易 REST API

  • 拉取器運作趨於穩定後,我開始處理交易 REST 端點。
  • 新增了 /transaction/<hash> 端點,用於透過交易雜湊查詢交易詳情。
  • 重構了交易輸出邏輯,使回應更簡潔、更容易維護。
  • 新增了對多重簽章及內部交易輸出的支援。
  • 透過這個端點,Explorer 可以依交易雜湊查詢詳細的交易資訊。
  • 新增了支援分頁及依區塊高度排序的 /transactions 端點。
  • 實作了針對 height、transaction_types、address、senderAddress、recipientAddress 和 senderPublicKey 的篩選條件。
  • 最後的「mosaic」篩選條件頗具挑戰,因為查詢需要正確比對與馬賽克有關的交易資料。
  • 我也考慮過 /mosaic/transfers,但 /transactions 的 mosaic 篩選條件可以滿足同樣的使用情境,因此決定不採用它。
  • 這再次提醒我,有時候更好的解決方案是改進現有端點,而不是新增端點。

Lightapi / Python

  • 為支援 NEM Explorer,新增了未確認交易端點。
  • 這使 Explorer 能夠透過 lightapi/python 查詢未確認的交易資料。
  • 相較於 Explorer 後端工作,這項改動較小,但 Explorer 依賴底層 API 層提供完整的資料,因此它仍是一項重要改動。

拉取器同步驗證

  • 使用拉取器將 NEM 測試網資料同步到本機資料庫。
  • 在本機檢查了同步過程,結果良好。
  • 編寫了在本機執行拉取器的設定指南,使設定步驟更容易重複執行和測試。

下一步計畫

交易清單端點仍需進一步研究,特別是篩選功能和審查回饋。之後,我將繼續處理其餘 Explorer 後端端點,並為後端與前端的整合做好準備。

感謝閱讀,下次再見! 🏴‍☠️

Image

—

Anthony (日文翻譯 Radio)

過往的日文翻譯 The Symbol Syndicate | Anthony’s Engineering Blog