Radix가 DeFi 앱에서 '확장성'을 재정의하는 방법

– 광고 –

Google 뉴스 팔로우

암호화 산업은 확장성과 관련된 문제를 극복하기 위해 전체 역사 동안 고군분투했습니다. Ethereum의 분산 응용 프로그램, 특히 DeFi 앱의 급속한 확장이 우리에게 보여주듯이 플랫폼은 대처할 수 없다 더 많은 양의 트래픽이 있습니다.

DeFi가 전통적인 금융에 대한 진정한 대안으로 부상하려면 동일한 종류의 규모에 도달해야 하기 때문에 좋지 않습니다. 불행히도 현재는 가까이 있지도 않습니다.

많은 솔루션이 제안되었으며 이미 구현되었습니다. 예를 들어 이더리움은 "에테 리엄 2.0", Fantom, Avalanche 및 Solana와 같은 다른 블록체인 프로젝트는 일반적으로 "초당 트랜잭션"으로 측정되는 처리량을 늘리기 위한 대체 기술을 제안했습니다.

그러나 DeFi는 TPS만으로는 확장할 수 없습니다. DeFi는 "원자 구성성" 성장하는 생태계 전반에 걸쳐 상호 운용성을 가능하게 합니다.

상호 운용성은 DeFi 앱에 매우 중요합니다. 일반적으로 "구성 가능성"이라고 하며 여러 자율 스마트 계약을 사용하는 단일 트랜잭션을 "구성"하는 dApp의 기능으로 생각할 수 있습니다. 이는 다양한 다른 dApp에서 트랜잭션을 자유롭게 구성할 수 있도록 하므로 대부분의 DeFi 앱에 필수적인 기능입니다. 이러한 방식으로 서비스는 여러 암호 화폐 거래소에서 사용자에게 최상의 환율을 제공할 수 있습니다. 또는 구성 가능성을 통해 DeFi 앱 사용자는 크라우드 소싱 유동성 풀을 활용하여 차익 거래 기회를 활용할 수 있습니다. 구성 가능성이 없다면 그러한 애플리케이션은 존재하지 않을 것입니다. 이는 이러한 복잡한 트랜잭션이 모두 복잡한 "원자적" 단계에서 동시에 발생해야 하기 때문입니다. 이렇게 하면 모든 스마트 계약에서 트랜잭션을 한 번에 완료하거나 스마트 계약 중 하나가 유효하지 않은 경우 실패할 수 있습니다.

이 원자적 구성 가능성은 DeFi와 수백 개의 독특하고 빠르고 사용자 정의 가능하며 상호 운용 가능한 dApp의 기반으로 작용하여 느리고 비효율적인 기존 금융 시스템보다 훨씬 더 유망합니다.

샤딩의 문제

중요하지만 트랜잭션 처리량을 늘리는 것을 목표로 하는 대부분의 블록체인 확장 솔루션은 원자적 구성 가능성을 희생하면서 그렇게 합니다. Ethereum 2.0을 포함한 대부분의 프로젝트는 "샤딩” 트랜잭션 블록을 서로 독립적으로 처리할 수 있는 별도의 조각으로 나누는 것을 목표로 하는 기술입니다. 이는 트랜잭션 처리량을 증가시키는 동시에 이러한 "샤드"가 서로에 대한 직접적 또는 원자적 액세스 권한을 갖지 않는다는 것을 의미합니다. 결과적으로 구성 가능성이 희생되어 DeFi로 알려진 복잡한 종류의 트랜잭션이 덜 효율적이 되었습니다.

문제는 서로 다른 샤드 간의 통신이 더 어려워진다는 것입니다. 이 샤드는 본질적으로 자체적으로 독립적인 블록체인이지만 서로 통신할 수 있는 방법이 있습니다. 그러나 이러한 샤드는 또한 서로 독립적으로 합의를 수행하므로 여러 샤드에서 원자적으로 트랜잭션을 처리하는 것이 불가능합니다. 대신 "영수증"이라고 하는 조건부 암호화 약정을 사용하여 서로 다른 샤드의 여러 블록에서 샤드 간 통신이 수행됩니다. 이는 트랜잭션이 훨씬 느려져 처리량이 증가하는 이점이 사라짐을 의미합니다. 스마트 계약 코드에서 구현하기가 극히 어려운 것은 말할 것도 없고 오류가 발생하기 쉽습니다.

케르베로스: 샤딩 정제

더 높은 처리량을 보장하면서 원자 구성 가능성의 문제를 해결하는 것은 혁명적 인 최종 목표 중 하나입니다. 기수 블록체인, 대규모 DeFi를 지원할 수 있는 분산 네트워크를 구축하는 것을 목표로 합니다. Radix는 구성 가능성과 확장성 사이의 긴장을 처음부터 해결하기 시작했습니다. 따라서 무제한 원자 구성 가능성은 고유 한 기본 요구 사항 중 하나입니다. 켈베로스 합의 메커니즘 달성하도록 설계되었습니다.

Cerberus는 다른 프로젝트에서 구현하지 않은 완전히 새로운 형태의 샤딩을 통해 이를 수행합니다. 그 결과 블록체인의 다른 프로세스를 느리게 하지 않고 동시에 여러 트랜잭션을 처리함으로써 무제한 병렬 처리를 제공하여 무제한 확장성을 달성하는 합의 메커니즘이 탄생했습니다.

Cerebrus를 설계하기 전에 Radix 팀은 글로벌 규모의 DeFi 플랫폼에 필요한 병렬 처리 수준을 달성하기 위해 실질적으로 무제한의 샤드를 지원할 필요성을 설정했습니다. 동시에, 합의 알고리즘이 나머지 네트워크를 지연시키지 않고 관련 샤드에서만 동기화되는 방식으로 원자적 트랜잭션에 대한 합의를 동적으로 수행할 수 있어야 함을 인식했습니다. 셋째, 병렬로 실행되는 무제한 트랜잭션과 DeFi 앱을 지원하기 위해 이 무제한 병렬 처리를 활용할 수 있는 응용 프로그램 계층의 필요성도 깨달았습니다.

이를 위해 Cerberus에는 이러한 요구 사항을 가능하게 하는 세 가지 고유한 기능이 있습니다. 첫째, 독립적으로 병렬로 합의를 달성할 수 있는 거의 무한한 수의 샤드를 지원할 수 있다는 것입니다. 둘째, 처리하는 각 트랜잭션에 대해 모든 샤드 집합에서 원자적 합의를 수행할 수 있습니다. 셋째, 필요에 따라 개별 샤드에 할당할 수 있는 UTXO와 같은 "기판"을 활성화합니다.

기질은 매우 구체적인 규칙을 따라야 하는 작은 기록을 나타냅니다. 예를 들어, 개발자는 일부 토큰이 보관된 위치를 기록하는 "토큰 기반"을 만들고 싶어할 수 있습니다. 이 기재는 "John의 계정에 10개의 XRD가 있습니다"와 같은 것을 말할 수 있습니다. 이 경우 토큰 기질의 규칙은 거래에 "이 10 XRD는 더 이상 Jane의 계정에 없습니다"와 같은 진술을 포함하도록 요구할 것입니다. 결합하여 이 기판 쌍은 10 XRD를 Jane에서 John으로 보내는 트랜잭션을 설명하여 XRD가 우발적으로 손실되거나 생성되지 않도록 합니다.

이러한 고유한 기능을 통해 Cerebrus는 무제한의 토큰 트랜잭션을 병렬로 처리할 수 있습니다. 이를 통해 각 토큰의 상태가 기판에 할당됩니다. 한편 수백만 개의 개별 계정이 보유한 토큰은 무한한 샤드에 흩어져 있습니다. 이런 식으로 누군가가 토큰을 다른 사람이나 다른 사람에게 전송하려고 할 때 해당 특정 자산을 소유한 사람을 기록하는 개별 샤드가 나머지 네트워크 성능에 영향을 미치지 않고 합의에 도달할 수 있습니다.

Radix 엔진의 역할

이 세 가지 기능은 두 가지 Radix 엔진의 고유한 기능, Radix의 응용 프로그램 계층 역할을 합니다. 첫째, Radix Engine은 Scrypto 프로그래밍 언어를 통해 수행되는 기판의 의미와 규칙을 정의할 수 있습니다. 둘째, 각 거래는 합의에 포함되어야 하는 기질을 정의할 수 있습니다. 이것은 Radix의 합의 메커니즘의 핵심 요소가 필요한 샤드에 대해서만 합의를 수행한다는 것이기 때문에 필요합니다. 따라서 애플리케이션 계층은 각 트랜잭션과 관련된 샤드를 Cerebrus에 알려야 합니다.

모든 것이 단일 타임라인 내에서 네트워크에서 발생하는 "글로벌 주문" 개념을 기반으로 구축된 이더리움의 EVM 아키텍처에서는 이러한 일이 불가능합니다. 이는 네트워크의 어느 곳에서나 단일 트랜잭션이 스마트 계약과 같이 다른 곳에서 변경할 수 있기 때문에 EVM에 필요합니다. 예측이 불가능하므로 EVM은 Cerebrus의 샤딩 스타일을 사용할 수 없습니다. 이러한 이유로 Radix는 "부분 주문"이라는 아이디어를 기반으로 구축되었으며, 여기서 각 트랜잭션은 포함되어야 하는 샤드를 지정해야 합니다.

이를 위해 Radix Engine은 EVM과 몇 가지 다른 작업을 수행합니다. 예를 들어, Radix Engine은 자산 이동을 병렬화할 수 있는 핵심 기능인 플랫폼 수준에서 각 토큰을 전역 개체로 취급합니다. 또한 Radix 트랜잭션은 충돌 없이 높은 처리량을 보장하기 위한 "의도"에 따라 모두 고유합니다. 마지막으로, 각 스마트 계약(구성 요소)과 소유한 데이터 및 리소스는 언제든지 단일 샤드에 할당되어 거의 무제한의 트랜잭션을 처리할 수 있습니다.

무제한 병렬 처리

한 가지 기억해야 할 점은 구성 가능성 자체가 Radix와 Cerberus에만 있는 것은 아니라는 것입니다. 실제로 Ethereum은 오늘날 이미 구성 가능한 수많은 DeFi 앱을 호스팅합니다. Ethereum의 문제는 처리하는 모든 단일 트랜잭션이 매우 느리게 실행되는 단일 글로벌 합의 알고리즘을 통해 수행되어야 하기 때문에 처리량이 충분히 빠르지 않다는 것입니다.

Ethereum 2.0, Cosmos 등과 같이 샤딩을 도입하는 확장 솔루션은 고정된 수의 샤드로 제한된 병렬 처리를 가능하게 하는 방식으로 처리량을 높입니다. 그러나 이것은 서로 다른 샤드 간의 구성 가능성을 위해 제공됩니다. 게다가 각 샤드의 처리량은 더 많은 트랜잭션을 확실히 처리할 수 있더라도 여전히 제한적입니다.

Radix는 그렇지 않습니다. Cerberus와 Radix Engine의 기능을 결합하면 대규모 병렬 처리를 통해 전 세계적으로 DeFi를 지원할 수 있는 플랫폼을 얻게 됩니다. 이를 통해 리소스는 병목 현상 없이 병렬로 처리될 수 있으며 구성 요소는 충돌 없이 최대 처리량으로 병렬로 실행될 수 있습니다. 또한, 각각의 개별 DeFi 앱을 병렬화하여 논리적으로 관련이 없는 여러 구성 요소를 사용하여 처리량을 높일 수 있습니다. 마지막으로 트랜잭션에는 해당 시점에 필요한 구성 요소와 리소스만 포함되기 때문에 병렬 처리의 효율성이 확대됩니다. 그리고 Cerberus는 필요한 경우에만 샤드 간 거래를 수행하기 때문에 이 모든 것이 원자 구성 가능성을 희생하지 않고 수행될 수 있습니다.

DeFi가 기존 금융과 동일한 규모로 전 세계적으로 성장하려면 무제한 병렬 처리가 필요합니다. 지금까지 Radix는 이를 제공할 수 있는 유일한 아키텍처입니다.

– 광고 –

출처: https://thecryptobasic.com/2022/08/22/how-radix-is-redefining-scalability-in-defi-apps/?utm_source=rss&utm_medium=rss&utm_campaign=how-radix-is-redefining-scalability-in -defi 앱