Ethereum Gas 수수료가 DeFi 개발을 방해하는 이유는 무엇입니까? 무엇을 해야 합니까?
편집자 주: 이 기사의 출처는체인뉴스 ChainNews(ID: chainnewscom)편집자 주: 이 기사의 출처는
체인뉴스 ChainNews(ID: chainnewscom)
, 작성: Remco Bloemen, 0x 기술 전문가 편집: Leo Young, 허가 하에 출판.
최근에 DeFi 제품을 사용하셨다면 높은 거래 수수료에 분명 실망하실 것입니다. 이제 이더리움 거래에 대해 수십 달러에서 수백 달러에 이르는 거래 수수료를 지불하는 것이 일반적입니다. 현재 환율에서는 "고래"만이 수익성이 있습니다. "은행 없는 은행" 또는 "모든 사람을 위한 무허가 금융 인프라 구축"이라는 고상한 목표는 잊어버리십시오. 이더리움은 부자들의 놀이터가 되었습니다.
이미지 설명
소액 거래 수수료는 때때로 10%까지 높을 수 있습니다.
우리는 모든 가치가 자유롭게 흐르는 토큰화된 세상을 만들고 싶지만 블록체인의 한계로 인해 이 사명을 달성하지 못하고 있습니다. 그렇기 때문에 0x Labs는 이러한 제한 사항을 해결하기 위해 전담 엔지니어 팀을 구성했습니다. 우리의 연구를 통해 이 글을 통해 이더리움의 한계와 그것이 DeFi 사용자에게 어떤 영향을 미치는지 살펴보고자 합니다. 또한 이 기사에서는 차세대 블록체인에 대해 간략하게 설명합니다. 앞으로 우리는 다양한 레이어 2 솔루션을 탐색하고 DeFi의 요구 사항을 충족하기 위한 전략을 보여주는 기사를 작성할 것입니다.
우선 이더리움 트랜잭션의 크기는 가스로 계산됩니다. 거래는 약 13초마다 블록 단위로 수집됩니다. 각 블록이 수용할 수 있는 거래의 수는 제한되어 있으며, 이것이 "가스 상한선"입니다. 현재 각 블록에는 약 1,200만 개의 가스 거래 공간이 있습니다. 순수한 ERC-20 토큰 전송에는 약 50,000 가스가 필요합니다. 즉, 각 블록은 최대 240개의 토큰 전송, 즉 초당 약 18개의 전송을 수용할 수 있습니다. DeFi 전송에는 일반적으로 여러 토큰 전송 및 부기가 포함되어 거래 비용이 두 배로 증가하고 블록 처리량이 제한됩니다. "gas cap"과 block time은 트랜잭션에 필요한 가스가 지속적으로 제공되어야 함을 의미합니다.
먼저 이더리움의 가스 공급과 사용량이 역사적으로 어떻게 성장했는지 살펴보겠습니다.
가스사용
이더리움에서는 매일 약 6,000개의 블록이 채굴되며 수십억 가치의 가스 거래 공간이 있습니다. 주로 "가스 한도"의 증가로 인해 가스 거래 횟수도 시간이 지남에 따라 변하고 증가합니다. 동시에 이더리움의 트랜잭션 수가 증가하고 커짐에 따라 트랜잭션에서 소비하는 총 가스 수수료도 증가합니다.
아래 그림과 같이 이더리움의 전체 역사에서 가스 공급(회색)과 소비(검은색)를 되돌아보면 다음과 같습니다.
이미지 설명
위의 그림에서 알 수 있듯이 이더리움은 기업 수준의 응용 프로그램입니다. 근무 시간 적용이 가장 높기 때문입니다.
"아이스 에이지"에서는 블록 생성 시간이 크게 증가하여 하루에 생성되는 블록 수가 감소하고 가스 공급이 감소했습니다. 물론 이 상황은 매우 인기가 없어서 네트워크 하드 포크를 조정해야 합니다. 이것의 목적은 하드 포크가 업그레이드와 개선을 가져오고 혁신이 정체되는 것을 방지하는 것입니다. 이스탄불(Istanbul) 하드포크가 '난이도 폭탄'을 리셋하지 않았기에 머지않아 뮤어 빙하 하드포크가 진행됐다. 다가오는 베를린(Berlin) 하드 포크는 이 메커니즘(EIP 2515) 변경을 고려합니다.
사용량(검은색)을 보면 2017년 이더리움의 ICO 열풍 이후 항상 가스 사용량이 60% 이상을 차지했다. 이후 '가스 상한'을 몇 배로 4배로 늘렸고, 상한이 높아질 때마다 가스 사용량도 비례해 증가했다. 이더리움 사용량은 지난 몇 달 동안 95%에 머물고 있습니다.
이더리움의 가스 사용량이 95%를 넘지 않는 이유를 이해하려면 "빈 블록"과 "옴머 블록"의 개념을 이해해야 합니다.
보조 제목
"빈 블록"과 "엉클 블록"
이더리움의 역사에서 수요가 높더라도 가스 사용량이 상한선인 95%를 넘은 적이 없습니다. 놀랍게도 나머지 5%는 완전히 빈 블록에 낭비됩니다. 이 빈 블록은 주기적으로 나타나며 대략 20블록당 1개가 나타납니다. 블록으로 패키징하기 위해 지불해야 하는 거래가 있는데 왜 빈 블록을 채굴하려고 할까요? 먼저 다음 데이터를 살펴보십시오.
빈 블록 비율은 시간이 지남에 따라 꾸준히 증가했으며 현재 5%입니다. 모든 마이닝 풀은 동일한 빈 블록 비율을 가지므로 빈 블록을 채굴하는 악의적인 채굴자가 없을 것입니다. 반대로 진짜 이유는 블록이 너무 빨리 생성되기 때문일 수 있습니다. 블록 채굴 시간이 6초 미만이면 빈 블록을 얻을 확률이 기하급수적으로 높아집니다.
한 가지 설명은 채굴자가 새 블록 헤더를 받자마자 전체 블록이 패키징되기 전에 다음 블록을 파기 시작한다는 것입니다. 비트코인에서는 이 작업을 SPV 마이닝이라고 하며, 채굴자는 블록 검증을 완료하지 않고 즉시 다음 블록을 찾기 시작할 수 있지만 빈 블록만 추가할 수 있습니다. 새 블록이 완전히 패키징된 후 다음 완전한 블록을 추가하고 마이닝으로 전환할 수 있습니다.
이 설명에 대한 추가 증거는 동일한 광부가 두 개의 블록을 빠르게 연속적으로 채굴하면 빈 블록 비율이 25% 감소한다는 것입니다.
빈 블록을 채굴하는 또 다른 방법은 이전 블록이 채굴된 것과 동시에 새 블록을 처리하는 것입니다. 이로 인해 여러 블록이 동시에 채굴됩니다. 이러한 상황이 발생하면 이더리움은 메인 블록을 선택하고 다른 블록을 "엉클 블록"(ommer)으로 표시합니다. "엉클 블록"을 파는 광부들은 여전히 작은 보상을 받을 수 있습니다. 이것이 발생하는 속도는 안정적입니다.
2018년 가스 사용량이 최고조에 달했을 때 "엉클 블록" 비율도 새로운 최고치를 기록했지만 그 비율은 전체 채굴된 블록의 5%로 떨어졌습니다. 이는 마이너가 이 시점에서 마이닝 전략을 변경할 수 있다는 사실과 일치하여 빈 블록 비율이 증가합니다.
빈 블록 비율이 이더리움의 확장성에 미치는 피해는 즉시 드러나지 않지만 영향을 미칩니다. Byzantium에 의해 업그레이드된 EIP-100 제안 이후 난이도 조정은 메인 체인 블록과 "삼촌 블록"의 일정 비율을 유지합니다. 따라서 "엉클 블록" 비율이 높다는 것은 더 많은 "엉클 블록"이 낭비되고 더 적은 블록이 메인 체인에 추가된다는 것을 의미합니다. 이는 일일 블록 생성 시간의 연장과 일일 총 가스량 감소에 반영됩니다. (확장 블록 시간의 또 다른 이유는 "난이도 폭탄"입니다)
빈 블록 비율과 "엉클 블록" 비율을 줄이는 방법이 있습니다. 추정되는 근본 원인은 네트워크 및 처리 지연으로 인해 풀이 최신 상태를 사용할 수 없다는 것입니다. 간단하지만 만족스럽지 못한 해결책은 마이닝 풀을 보다 중앙 집중화하여 가장 최근의 상태를 하나로 묶는 것입니다.
보다 분산된 솔루션은 bloXroute와 같이 마이닝 풀 간에 전용 연결을 생성하는 것입니다. "스파이 마이닝"에서 영감을 받은 마이닝 풀은 현재 마이닝 중인 블록을 미리 공유할 수 있습니다. 다른 채굴 풀은 채굴될 수 있는 후속 블록을 준비합니다. 마이닝 풀이 자체 블록을 성공적으로 채굴한 후에는 이미 미래에 어떤 블록을 채굴할 수 있는지 알고 즉시 전환합니다. 스택 위에서 노드 통신 프로토콜 및 처리 알고리즘을 개선하는 것도 효과적이며 이러한 영역에는 여전히 개선의 여지가 있습니다. 궁극적으로 빈 블록 비율과 "엉클 블록" 비율을 줄이면 가스 공급을 하루에 최대 5%까지 늘릴 수 있습니다.
그래서 95% 휘발유 상한선이 있는 것 같은데 누군가 95% 이상을 사용하고 싶다면?
보조 제목
가스 가격
Ethereum 가스 한도에 도달하면 어떻게 됩니까? 채굴자들은 트랜잭션을 패키지화하는 것을 자유롭게 선택할 수 있지만(자세한 내용은 나중에 설명함) 실제로 채굴자들은 "높은 가스 수수료 우선 원칙"에 따라 트랜잭션을 패키지화합니다. 이것이 가장 수익성이 높기 때문입니다. 이렇게 하면 사용 가능한 가스에 대한 첫 번째 가격 경매가 생성됩니다.
가스 가격은 "완전 비탄력적 공급"의 교과서 모델이 되었습니다. 네트워크 활용도가 80%를 넘어 95%까지 오르면 가스 가격이 크게 오른다. 잠재적인 수요 증가는 가격이 수요를 억제하고 동일한 수준으로 떨어질 때까지만 가격을 증가시킵니다.
가격을 낮추는 유일한 방법은 가스 공급을 늘리거나 수요를 줄이는 것인데 최근의 가스 상한선 인상은 가스 가격을 효과적으로 낮추기에 충분하지 않았습니다.
얼핏 보기에 이더리움에 대한 관심 증가는 사용량이 아닌 가격만 올릴 것입니다. 실제로 값싼 게임 NFT(Non-Homogeneous Token) 거래가 줄어들고 가치가 큰 DeFi 거래가 늘어나면서 가치가 높은 사용은 가치가 낮은 사용을 몰아낼 것입니다.
제안 EIP-1559에 따르면 장기적으로 고정된 가스 발행률이 여전히 존재하며 이는 수요가 충분히 적을 때까지 가스 가격이 계속 상승할 것임을 의미합니다. EIP-1559는 여전히 프리미엄을 지불하는 동일한 블록 내에서 우선 순위 패킹을 권장합니다(풀이 원래 순서대로 블록을 계속 채굴한다고 가정). 이것은 선행 거래, 가스 입찰 및 광부 이익이 여전히 존재한다는 것을 의미합니다.
그림의 숫자는 다음 블록에서 포장할 수 있는 최저 가격을 나타냅니다. 더 오래 기다릴수록 가스 가격은 낮아집니다. 과거 데이터에 따르면 2분 이상 기다리면 가격이 낮아집니다. EIP-1559는 더 빠른 거래 처리를 위해 보험료를 줄이는 데 도움이 됩니다.
그래서 주유 한도는 휘발유 가격을 높입니다. 그렇다면 한도를 어떻게 올릴까요?
보조 제목
가스 한도
채굴 풀은 가스 한도를 결정합니다. 다음은 광부와 풀이 작동하는 방식에 대한 간략한 개요입니다. 거의 모든 광부가 컴퓨팅 리소스를 풀링합니다. 채굴자들은 오랜 시간 동안 수확이 없을 위험을 무릅쓰고 혼자 다음 블록으로 가지 않고 자원을 모아 안정적인 수입을 얻습니다. 마이닝 풀은 각 마이너가 기여한 컴퓨팅 파워를 확인한 후 계속해서 다음 블록을 채굴하여 마이닝 풀의 발전을 촉진합니다. 대규모 마이닝 풀은 더 많은 블록을 마이닝하게 됩니다.
Ethereum의 마이닝 풀 공유 개발을 살펴보겠습니다.
Xinghuo, Ethermine 및 Yuchi가 메인 블록을 차지했습니다.
채굴자들의 실제 운영에 대한 자세한 정보가 부족하기 때문에 투표 시스템이라는 간단한 방법을 사용할 것입니다. [...] 앞으로 더 정확한 알고리즘으로 소프트 포크할 수 있기를 바랍니다.
**이더리움 설계 원칙(2015년 3월 처음 추가됨)**
Ethereum의 초기 채굴자들이 가스의 상한선을 설정하는 방식은 "채우기 솔루션"이었습니다. 많은 "충진 솔루션"은 백업 매개변수가 되기에 충분합니다. EIP 1559는 다른 메커니즘을 제안하며 현재 베를린 포크의 경우 사용에 대해 논의 중입니다. 그 전에는 OPEC이 석유 생산을 통제하는 것처럼 채굴 풀 운영자가 가스 공급을 통제할 수 있었습니다.
이미지 설명
최근 두 개의 마이닝 풀이 만장일치로 가스 생산량을 25% 늘리기로 결정했는데, 이는 상당히 논란이 되고 있습니다. 가스 공급을 늘려 높은 거래 수수료의 압박을 완화하는 것이 목적이다. 지금까지 우리가 본 것은 거래 수요가 가스 한도보다 빠르게 증가하고 있다는 것입니다. 이로 인해 가격이 일시적으로 둔화되고 결국 상승하게 됩니다.
가스 한도를 높이면 이더리움 보안에 숨겨진 위험이 커질 것입니다. 위에서 언급했듯이 가스 캡은 "엉클 블록" 비율과 빈 블록 비율을 증가시킵니다. 정상적인 트랜잭션 부하에서 이 증가는 작습니다. 그러나 보안을 위해 정상적인 행동은 신경 쓰지 않고 나쁜 상황에서 나쁜 행동만 합니다. Perez와 Livshits(2019)는 이 나쁜 상황을 연구했으며, 그 결과 동일한 가스 비용에서 나쁜 시간의 트랜잭션이 일반 트랜잭션보다 100배 더 느립니다. 블록이 트랜잭션으로 채워지는 데 90초가 걸립니다. 이로 인해 노드 동기화가 지연되고 마이닝 풀은 "엉클 블록"과 빈 블록을 파냅니다. 이 원고가 출판되는 시점에서 문제가 완화되었지만 피할 수 있을 만큼 충분하지는 않습니다. 이로 인해 두 명의 주요 노드 개발자인 Péter Szilágyi와 Alexey Akhunov는 가스 한도를 늘리기로 한 결정을 비판했습니다.
따라서 가스 캡은 가스 가격을 상승시킵니다. 가스 한도를 늘리기만 하면 안 될 것 같습니다. 어떻게 해야 하나요? 거래에 대한 가스 비용을 낮출 수 있습니까?
보조 제목
가스 비용
트랜잭션의 가스 비용은 주로 EVM 운영 비용으로 구성됩니다. 트랜잭션은 많은 EVM 작업으로 구성되며 각 작업의 비용은 EIP 및 하드 포크에 의해 결정됩니다. 지난 몇 번의 하드 포크 동안 일부 작업의 가스 비용은 증가했고(EIP 150, 160, 1884) 일부는 감소했습니다(EIP 1108, 2028, 2200). 계획된 베를린 하드 포크는 특정 작업의 가스 비용 변경도 고려하고 있습니다.
모든 변경 사항의 목표는 수수료가 실제 운영 비용을 보다 정확하게 반영하도록 하는 것입니다. 즉, 컴퓨터와 알고리즘이 빨라지면 컴퓨팅 비용이 감소합니다.
이는 스토리지가 여전히 DeFi 애플리케이션의 "큰 비용"이라는 것을 의미합니다. 새 잔액을 생성하는 데 20,000 가스가 필요하고 기존 잔액을 수정하는 데 5,000 가스가 필요합니다. 이체는 최소 2회 잔액 수정, 송금은 최소 4회 수정이 필요하며 DeFi 거래에 필요한 상태 수수료는 더 높습니다. 관련된 스토리지의 양을 줄이는 쉬운 방법이 없는 것 같고 스토리지 비용은 수요가 증가함에 따라 증가합니다. 밝은 면에서 Layer 2 스케일링 솔루션은 경량 스토리지 및 고성능 컴퓨팅인 경향이 있어 더 많은 이점이 있는 것으로 보입니다.
마지막으로 가스 한도가 증가함에 따라 동일한 보안 문제가 발생합니다. 나쁜 것이 중요합니다. 가스 비용을 현재 작업의 평균 비용으로 지역적으로 최적화하는 것은 위험합니다.
이것은 이더리움의 확장성 문제가 왜 그렇게 골치 아픈지 분명하게 보여줍니다. 솔루션을 제공하기 전에 현재 DeFi 사용자에게 피해를 주는 이더리움의 또 다른 한계를 언급할 필요가 있습니다.
보조 제목
이익을 위한 광부
블록 패커는 합의 규칙을 따릅니다. 합의 규칙은 트랜잭션 선택 및 주문과 같은 중요한 자유를 보장합니다. 일반적인 토큰 전송의 경우 큰 문제는 아닙니다. 그러나 거래소와 같은 DeFi 거래의 경우 선행 거래는 경제적 가치가 높습니다. 대상 거래의 양측이 공격을 받으면 더 복잡한 수익 창출 행동이 나타납니다. Daian et al.(2019)은 이것을 "광부 추출 가능 가치"라고 부릅니다.
다른 경우에는 가격 오라클 업데이트 후 포지션을 청산하는 첫 번째 거래와 같이 바로 다음 거래에 가치가 있습니다. 이를 "백런닝(back-running)"이라고 하며 결과적으로 채굴자에게도 이익이 됩니다.
큰 가격 차이, 가격 편차, 높은 수수료 및 더 많은 거래 실패는 결국 DeFi 사용자와 이익 채굴자에게 피해를 줄 것입니다. 더 나은 DeFi 경험을 위해서는 이 문제를 해결해야 합니다. 이를 해결하기 위해서는 블록 내 가스 가격이 가장 낮은 거래를 우선적으로 요구하는 등 거래 주문의 자유도를 제한할 필요가 있다.
Ethereum의 한계와 그것이 DeFi에 미치는 영향은 이제 완전히 이해되었습니다. 확장성 작업을 하는 모든 스타 팀이 결국 이 문제를 해결할 것입니다.
보조 제목
하단 레이어를 강화하고 두 번째 레이어에 집중
다양한 확장성 솔루션을 작업하는 훌륭한 팀이 많이 있습니다. Layer 1과 Layer 2의 두 가지 솔루션이 있습니다. Layer 1 솔루션의 목표는 보다 확장 가능한 이더리움을 구축하는 것이며, Layer 2 솔루션은 이더리움을 기반으로 보다 확장 가능한 인프라를 구축하는 것입니다.
가장 명백한 문제부터 시작하십시오: 기존 이더리움의 성능 향상 - 이것이 Eth1x에 관한 것입니다. Ethereum 클라이언트의 성능을 개선하기 위해 할 수 있는 개선 사항이 여전히 많이 있습니다. 불행히도 Eth1x는 마땅한 지원이 거의 없으며 모든 진행이 매우 느립니다.
Eth1x가 어떤 종류의 성능을 달성할 수 있는지 이해하기 위해 먼저 Solana를 살펴보겠습니다. Solona의 처리량은 Ethereum의 천 배 이상에 도달할 수 있으며 여전히 개선의 여지가 있습니다. 이 접근 방식의 주요 단점은 전체 노드를 실행하기 위한 하드웨어 요구 사항이 높다는 것입니다.
대부분의 다른 솔루션에는 세 가지 공통점이 있습니다.
WebAssembly를 가상 머신으로 사용, 최소한의 상태 저장 아키텍처, 가장 중요한 샤딩. 현재 Ethereum의 모든 트랜잭션은 순차적으로 실행됩니다. 트랜잭션 주문은 의심할 여지 없이 블록체인의 핵심입니다. 이 모델의 단점은 병렬화가 어렵기 때문에 더 많은 리소스를 투자해도 확장성 문제를 쉽게 해결할 수 없다는 것입니다. 이것이 바로 차세대 블록체인 Eth2.0이 해결할 것입니다.
트랜잭션이 실행되는 방식을 변경하여 트랜잭션을 병렬로 처리할 수 있습니다. 이 체계는 블록체인을 여러 개의 느슨하게 연결된 도메인 또는 "샤드"라고 하는 프로세스로 분할하여 달성됩니다. 샤드 내의 트랜잭션은 여전히 주문되지만 샤드 간에는 비동기식입니다. 이렇게 하면 모든 샤드가 병렬로 실행되어 샤드 수만큼 네트워크를 확장할 수 있습니다.
분리에 사용되는 도메인이 반드시 샤드와 일치할 필요는 없으며 동일한 샤드가 여러 도메인을 가질 수 있으며 로드 밸런싱을 위해 도메인을 마이그레이션할 수도 있습니다. 샤딩 기술에 대한 심층적인 이해를 위해서는 Near Protocol의 "Night Shadow" 논문을 참조하십시오.
차세대 블록체인의 메인체인이 언제 어디서 도메인으로 분할되는지는 상황에 따라 다릅니다. 2세대 블록체인은 세분화된(많은 작은 도메인)에서 거친(거대한 도메인이 거의 없음) 스펙트럼으로 볼 수 있습니다.
두 개의 프로젝트가 세분성 스펙트럼의 양쪽을 차지합니다. Dfinity는 각 에이전트가 자체 도메인을 갖고 각 에이전트 상호 작용이 비동기인 세분화된 끝에 있습니다. Near 프로토콜은 약간 덜 세분화되어 있으며 각 계약에는 자체 도메인이 있습니다. 거친 끝이 Polkadot이고 그 영역이 전체 샤드이며, 이러한 상황을 더 정확하게는 "병렬 체인"이라고 합니다. DApp 개발자 입장에서 이더리움 2.0을 판단하기는 이르다. Eth1EE(Eth2의 Eth1 실행 환경)는 샤딩과 일치하는 경계로 거칠고 현재 이더리움은 샤드가 될 것입니다. 세분화된 솔루션의 장점은 투명성이며 계약 간의 호출은 샤드 경계를 넘든 그렇지 않든 동일하게 보입니다. 이를 통해 샤드 간에 계약을 이동하여 로드 균형을 쉽게 조정할 수 있습니다.
단점은 도메인 간 트랜잭션이 더 이상 원자적이지 않고 병렬화되며 그 중 일부는 취소할 수 없다는 것입니다. Dfinity와 Near는 계약 간의 호출이 비동기이고 반환 계약이 await를 기다림을 보여줍니다. 기다리는 동안 발생하는 모든 트랜잭션은 체인에 기록됩니다. 그러면 다른 사람의 거래가 그 위에 겹쳐질 수 있습니다. 현재 모든 이전 거래를 취소할 수 없습니다. 대기가 최종적으로 확인된 후 계약 호출의 성공 또는 실패 명령을 반환할 수 있습니다. 이 상황을 피하고 샤드 전체에서 일부 원자성을 달성하기 위한 여러 가지 제안이 있지만 여기에는 단점도 있습니다. 원자화 해제를 수용하는 것은 자연스러운 결과처럼 보입니다.
DeFi의 경우 비동기식 transferFrom 호출이 큰 문제입니다. Alice와 Bob이 ETH와 DAI를 거래하고자 하는 두 당사자 간의 간단한 거래를 상상해 보십시오. 기본 계약은 다음과 같아야 합니다.
하지만 이제 오류를 처리해야 합니다. 첫 번째 트랜잭션이 실패하면 트랜잭션을 중지할 수 있습니다. 두 번째 트랜잭션이 실패하면 1 ETH를 Alice에게 반환해야 합니다. 문제는 이 시점에서 Bob이 이미 1 ETH를 사용했을 수 있다는 것입니다. 이 문제를 해결하는 한 가지 방법은 호스팅입니다.
그게 다야, 아무도 잃지 않습니다. 그러나 이제 Bob은 Alice의 거래를 선택할 수 있는 배타적인 자유를 가집니다. Alice의 토큰은 에스크로에 있으며 다른 거래는 이루어지지 않으며 Bob과의 거래가 성공할 것이라는 보장도 없습니다. 이 문제를 수정하면 위반자에 대한 처벌로 이어질 수 있습니다. 그러나 DeFi 거래는 매우 비싸기 때문에 어느 정도의 처벌이 적절한지 판단하기 어렵습니다. 이 문제를 해결하려면 시장의 모든 당사자가 처음에 예금 계약에 자금을 보관해야 합니다. 그리고 이것은 중앙 집중식 상태가 되며 기본적으로 샤딩이 필요하지 않습니다.
트랜잭션은 DeFi 구축의 기초이며 일련의 처리 절차입니다. 우리는 이미 교환 거래 책이 어떻게 도전을 제기하는지 알고 있습니다. 자동 마켓메이커 교환은 에스크로 적립금이 있기 때문에 비교적 간단하지만 적립금 잔고가 병목 현상을 일으켜 병렬화를 방해합니다. 가장 빠른 기존 거래소에서도 정산은 병렬화되지 않고(중복이 있을 수 있음) 단일 매칭 엔진 순서로 수행됩니다. 전통적인 교환이 어떻게 작동하는지 자세히 살펴보려면 Brian Nigito의 이야기가 좋습니다.
인용하다
Daniel Perez & Benjamin Livshits (2019). “Broken Metre: Attacking Resource Metering in EVM.”
Daian et al. (2019). “Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges.”
Brian Nigito (2017). “How to Build an Exchange.”
Danny Ryan (2020). “The State of Eth2, June 2020.”
Scott Shapiro & William Villanueva (2020). “ETH 2 Phase 2 WIKI.”
Near Protocol sharding design







