← 뒤로
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 측에는 해시로 트랜잭션을 조회하거나 필터를 적용한 트랜잭션 목록을 표시할 수 있는 깔끔한 엔드포인트가 필요했습니다. 그 과정에서 수많은 리베이스, 리뷰 피드백 대응, 리팩터링, 테스트 업데이트도 이루어졌습니다. 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