pile·
백엔드·엘리시아엘리시아·

Gas! Gas! Gas! ⛽ 가스비를 절약하는 방법

이더리움 가격이 10배 오르면서 "커피 한 잔으로 건물주" 라는 서비스가 커피 10잔치 수수료를 내야 하는 상황이 된 문제를, 엘리시아가 Binance Smart Chain 도입으로 푼 기록이다. 가스비 계산식부터 레이어2 솔루션 비교, 그리고 그 대가로 무엇을 내줬는지까지 짚는다.

핵심 포인트
  • 가스비 = 트랜잭션 실행 가스의 총량 × 가스의 가격이다. 연산이 많을수록 가스 양이 늘고, 가스 가격은 이더리움 가격에 비례한다.
  • 이더리움 특유의 변수는 네트워크 혼잡도다. 대기 요청이 많을수록 가스 가격이 오르며 평소의 20배가 되는 경우도 있다.
  • 줄이는 길은 둘뿐이다. 연산을 줄이거나 가스 가격을 줄이는 것인데, 연산 축소는 명령어 몇 개 아끼는 수준이라 효과가 작다.
  • 최종 선택은 BSC 였고 수수료를 약 45달러에서 0.3달러대로 낮췄다. 트랜잭션 속도도 함께 개선됐다.
  • 대가는 탈중앙성이다. 이더리움은 노드가 수천 개인 반면 BSC 는 바이낸스가 만든 체인으로 검증 노드가 21개다.
상세 정리
  • 개념 설명이 비유로 정리돼 있다. 이더리움을 모두가 쓰는 공통 데이터베이스로 보면, 기록해 주는 노드에게 보상을 줘야 하고 그 보상이 가스비다.
  • 가스비는 보상인 동시에 네트워크를 마비시키는 과도한 요청을 막는 장치다. 요청을 많이 하려면 그만큼 이더리움이 필요하기 때문이다.
  • 가스 양은 사용하는 컴퓨터 명령어별로 매겨진 가스 테이블로 계산한다. 서울→경기와 서울→부산의 기름 소모 차이에 빗댄다.
  • 이더리움 재단의 대응도 함께 언급한다. 2.0 은 샤딩으로 확장성을, 1.0 은 EIP-1559 로 가스비 문제를 완화하려 하고 있다.
  • 비탈릭 부테린이 트윗으로 추천한 zksync·loopring·OMG 는 모두 레이어2 솔루션이다. 여러 트랜잭션을 모아 계산한 뒤 레이어1에 기록해 메인넷의 계산량을 줄인다.
  • ZK 롤업(zksync·loopring): 상태 변화·서명 검증·컨트랙트 실행 등 모든 계산을 레이어2에서 하고 결과 데이터를 메인넷에 기록한다. 메인넷은 저장 용도로만 쓴다.
  • 플라스마(OMG): 계산은 같지만 기록 방식이 다르다. 저장할 데이터를 트리 구조로 만들어 루트 노드만 메인넷에 올리고 자식 노드는 플라스마에 둔다.
  • 그래서 플라스마가 처리량은 롤업의 2배 수준이지만, 모든 데이터가 이더리움에 있지 않아 플라스마 체인에 대한 의존성이 생긴다.
  • 그 밖의 모델로 채널(Channel), 발리디움(Validium), 사이드체인도 소개한다.
  • 레이어2 를 접은 이유: 대부분 EVM 을 완전히 지원하지 않아 기존 컨트랙트를 그대로 쓸 수 없고, 단순 전송까지만 롤업이 되는 경우가 많아 조금만 다른 기능이면 바로 못 쓴다. 컨트랙트와 앱 수정이 많이 필요할 것으로 예상됐다.
  • BSC 를 고른 부수적 이점: 이더리움과 거의 동일한 환경이라, 나중에 이더리움이 샤딩 등으로 가스비 문제를 해결하면 네트워크를 쉽게 되돌릴 수 있다.
  • 트레이드오프를 알고리즘의 시간·공간 트레이드오프에 빗대며, 잃는 탈중앙성의 정도를 가늠하긴 어렵지만 커피 10잔의 수수료보다는 얻는 게 크다고 판단했다고 밝힌다.
왜 읽나이더리움 메인넷 수수료 때문에 서비스가 성립하지 않는 팀에게, 레이어2와 대체 체인의 선택지를 대가와 함께 비교해 준다.
엘리시아
엘리시아 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 백엔드·twilio-engTwilio Engineering·

    Programmable Messaging에서 Verify API로 마이그레이션하기

    Twilio의 Programmable Messaging API로 자체 OTP 솔루션을 운영하던 서비스가 Verify API로 전환하는 방법을 코드 예시와 함께 설명한다. Verify는 OTP 전송·검증을 위한 전용 API로, 전화번호 구매, 토큰 생성, DB 저장·만료 관리를 내부에서 처리해 개발자가 직접 구현할 코드를 크게 줄인다.

    요약 이어보기
    #authentication#twilio#sms+2
  2. 백엔드·포스타입포스타입·

    포스타입이 개인화 추천을 하는 방법 2부

    포스타입 백엔드 엔지니어가 벡터 기반 개인화 추천 시스템을 실제 운영하며 맞닥뜨린 성능 장애와 용량 문제를 해결한 과정을 담은 2부다. 수백만 개의 벡터 KNN 검색이 피크 시간대에 전체 Elasticsearch 검색 성능을 흔드는 문제부터 클러스터 OOM 사태까지, 쿼리 최적화와 인프라 분리 두 가지 경로로 근본 해결에 이른다.

    요약 이어보기
    #elasticsearch#vector-search#recommendation-system+2
  3. 백엔드·포스타입포스타입·

    포스타입이 개인화 추천을 하는 방법 1부

    포스타입이 태그 기반 추천의 한계를 극복하고 벡터 임베딩 기반 개인화 추천 시스템을 구축한 과정을 담은 1부다. 유사한 콘텐츠가 다른 용어를 쓰거나 동일한 태그가 전혀 다른 톤의 콘텐츠를 가리키는 문제를 임베딩 벡터로 해결하고, OpenSearch의 HNSW ANN 검색으로 수백만 벡터를 실시간 검색하는 시스템을 구축해 구매율 15% 향상을 달성했다.

    요약 이어보기
    #opensearch#vector-search#recommendation-system+2