ITAM Games 오픈소스 프로젝트 ethereum-antenna 소개 - (1)

2022. 3. 31. 16:30Backend

소개

안녕하세요, ITAM games 백엔드팀에서 열심히 로켓을 개발 중인 

이성우 입니다 :)

 

회사에서 프로젝트를 개발을 하며 겪었던 문제점이나 고민들을 회사 기술블로그를 통해

공유하려 합니다.

많은 관심 부탁드립니다.

 

 

서론

오늘은 ITAM Games 오픈소스 프로젝트 중 하나인

ethereum-antenna 에 대해 소개해 드리려 합니다.

 

 

본론

들어가기에 앞서, 블록체인에 대해 잘 모르고 계신 분이라면

블록체인은누구든지 접근할 수 있는 공개된 데이터베이스(DB) 라고

생각하셔도 됩니다.

블록체인 네트워크에 데이터를 입력하고 수정하고 삭제하는 행위들은

계약(Contract)을 통해 진행되며 이러한 거래내역(Transaction)은

블록체인 블록에 기록되고 있다고 보시면 됩니다.

 

 

저희 ITAM Games 의 비즈니스는블록체인 네트워크 기반이 아닌 서비스에

블록체인 SDK 나 API 등을 제공하여 블록체인 서비스를 제공하는 미들웨어 플랫폼을

개발하고 있습니다.

 

그 중에는 블록체인에 기록된 정보를 읽어와 가공하여 저희 플랫폼을 사용하는

서비스에 제공해주는 기능이 필요했습니다.

 

ethereum-antenna 는 이러한 계약 내역들을 읽어와 백엔드 서버에 제공해주는

중요한 역할을 담당하고 있습니다.

 

ethereum-antenna 가 개발되기 이전에는 프로젝트마다

블록체인 계약 거래내역을 특정 간격으로 수집해오는 로직들이

들어가 있었습니다.

 

하지만, 블록체인 네트워크 상에 장애가 발생하면 저희는

모든 프로젝트를 열어 장애를 대응하기에 바빴습니다.

 

좀 더 생산적으로 개발을 하고자 했던 저희 팀원들은 블록체인 서비스를

트래킹 해주는 오픈소스를 찾기 시작했습니다.

그러나, 저희 입맛에 맞는 블록체인 트래킹 모듈을 찾기란 쉽지 않았습니다.

 

결국 시간을 쪼개어 프로젝트 마다 녹아있던 블록체인 트래킹 로직에서

비즈니스 로직을 걷어내고 모듈화하기 시작했습니다.

약 2주일이란 시간을 들여 ethereum-antenna 를 모듈화하는데 성공했습니다.

그리고 저희와 같은 고민을 하는 개발자가 있을거라는 생각에

ethereum-antenna 를 오픈소스화 하기로 결정했습니다.  

[Github] ethereum-antenna

 

 

결론

다음 예정 포스팅은 간단한 예제를 통해 ethereum-antenna 사용법에

대해 글을 올릴 예정입니다.

 

아직 많이 작고 부족한게 많은 모듈입니다.

하지만, 필요한 기능이나 개선점을 찾아 기여해주실 분들을

찾고 있으니 많은 관심 부탁드립니다.

 

또, ITAM Games 에서는 저희와 함께 좋은 프로덕트를 만들어 나가기 위해

함께 고민하고 함께 성장해 나가실 개발자분들을 모시고 있습니다.

ITAM Games 채용공고

 

많이 부족한 글임에도 시간내어 읽어주셔서 정말 감사합니다 :)

다른 의견이 있으시다면 댓글로 달아주시면 확인하도록 하겠습니다.