Продажы BAYC з-за дрэнна аптымізаванага кода каштуюць непатрэбных 100 мільёнаў долараў за газ

Сузаснавальнік Syndicate DAO Уіл Пэппер заявіў 1 мая, што неэфектыўнасць у Лабараторыі Юга Іншабочны продаж зямлі выклікаў $ 100 мільёнаў марна траціцца на газавыя зборы.

У твітэры Папер патлумачыў, як у разумным кантракту, які выкарыстоўваўся для чаканкі зямлі метавселенной BAYC, адсутнічалі ключавыя аптымізацыі. Разумны кантракт адпавядае стандарту ERC721, які, сцвярджаў Папер, змяшчае некаторыя функцыі і пашырэнні, якія «раздражняюць і непатрэбныя».

Для барацьбы з неэфектыўнасцю ён прапанаваў тры змены.

Выдаліце ​​пашырэнне ERC721Enumerable

Першае змяненне, якое прапанаваў Papper, - гэта выдаліць пашырэнне ERC721Enumerable, якое выкарыстоўваецца для адсочвання ўладальнікаў NFT у ланцужку.

Papper сцвярджаў, што няма неабходнасці запісваць уладальнікаў у ланцужку, паколькі кожны можа запытаць блокчейн праз знешні інтэрфейс, каб перадаць дадзеныя ў смарт-кантракт. Ён сказаў, што толькі выдаленне пашырэння можа зэканоміць 70% на газавых зборах, выдаліўшы адно слова.

Выкарыстоўвайце ERC721A... стандарт, распрацаваны в Азукі

Папер сказаў, што стандарт ERC721A распрацаваны Азукі team з'яўляецца лепшым выбарам, паколькі дазваляе карыстальнікам чаканіць некалькі NFT падчас адной і той жа транзакцыі па цане амаль адной.

Ён дадаў, што ERC721A робіць манетныя двары "рэзка танней", што кампенсуе той факт, што ён робіць "трансферы крыху даражэйшымі".

Згодна з аналізам Papper, большасць карыстальнікаў чакаюць больш за адзін NFT. Паводле ягоных ацэнак, гэта магло б знізіць агульны кошт газу на 10 мільёнаў долараў.

Пераключыцца з _safeMint() на _mint()

Апошняя аптымізацыя, якую рэкамендаваў Papper, - гэта замена функцыі _safeMint().

Ён сцвярджаў, што гэта толькі дапамагае гарантаваць, што кашалёк можа прымаць NFT, і паколькі большая частка супольнасці, верагодна, выкарыстоўвае сумяшчальныя і вядомыя кашалькі, такія як Metamask, TrustWallet, Coinbase Wallet і SafePal; гэтая функцыя марнуе плата за газ.

Далей Пэппер удакладняе, што ён не нападае на Yuga Labs за некампетэнтнасць, і прызнаў іх унёсак у галіну. Ён сказау:

«[Я] патраціў незлічоныя гадзіны на аптымізацыю газу і хацеў бы падзяліцца некалькімі прыёмамі. Гэтая тэма прызначана для навучання і не адмяняе працы, якую Юга робіць для экасістэмы».

Ён таксама падзяляе метадалогію, якую SyndicateDAO выкарыстоўвае для працэсу чаканкі, каб гарантаваць, што ніхто не спрабуе чаканіць у той жа час, што павышае плата за газ.

Крыніца: https://cryptoslate.com/100m-in-bayc-otherside-gas-fees-wasted-due-to-badly-optimized-code/