Hvernig á að búa til dreifð forrit sem skalast? Notaðu minna blockchain

Nei, að ræsa dreifð forrit (dapp) á blockchain mun ekki leiða til farsæls viðskipta. Reyndar hugsa flestir notendur ekki einu sinni um hvort forritið keyrir á blockchain - þeir velja einfaldlega vöru sem er ódýrari, hraðvirkari og einfaldari.

Því miður, jafnvel þótt blockchain hafi sína einstöku eiginleika og kosti, eru flest forrit sem keyra á því miklu dýrari, hægari og minna leiðandi en miðlægir keppinautar þeirra.

Hvernig á að búa til dreifð forrit sem skalast? Notaðu minna blockchain

Oft í hvítbókum forrita sem eru byggð á blockchain er hægt að finna málsgrein sem segir: "Blockchain er dýr og getur ekki staðið undir nauðsynlegum fjölda viðskipta á sekúndu. Sem betur fer eru margir snjallir að vinna að því að skala blockchain og Þegar forritið okkar opnar verður það nokkuð skalanlegt.“

Í einni einfaldri málsgrein getur dapp verktaki sleppt dýpri umræðu um sveigjanleikavandamál og aðrar lausnir á vandamálum. Þetta leiðir oft til óhagkvæms arkitektúrs þar sem snjallir samningar sem keyra á blockchain þjóna sem bakendi og kjarni forritsins.

Hins vegar eru enn óprófaðar aðferðir við dreifðan forritaarkitektúr sem gerir ráð fyrir miklu betri mælikvarða með því að draga úr ósjálfstæði á blockchain. Til dæmis er Blockstack að vinna að arkitektúr þar sem flest forritsgögn og rökfræði eru geymd utan keðju.

Skoðum fyrst hefðbundnari nálgun, sem notar blockchain sem beinan millilið á milli notenda forrita, og sem mælist ekki sérstaklega vel.

Nálgun #1: Blockchain sem bakendi

Til að gera hlutina skýrari skulum við taka hóteliðnaðinn sem dæmi. Þetta er risastór iðnaður þar sem milliliðir eins og Booking.com, þeir taka mikið gjald til að tengja saman gesti og hótel.

Í öllum aðstæðum þar sem við viljum sigra slíkan millilið með því að nota þessa nálgun, munum við reyna að endurtaka viðskiptarökfræði hans með því að nota snjalla samninga á blockchain eins og Ethereum.

Opinn uppspretta snjallsamningar sem keyra á „heimstölvunni“ geta tengt kaupmenn við neytendur án þriðja aðila á milli, sem á endanum lækkar gjöld og þóknun sem milliliðurinn tekur.

Eins og sést á myndinni hér að neðan, nota hótel dreifð forrit til að birta á blockchain upplýsingar um herbergi, framboð þeirra og verð á virkum dögum eða helgum, og kannski jafnvel lýsingu á herbergjunum með öllum öðrum viðeigandi upplýsingum.

Hvernig á að búa til dreifð forrit sem skalast? Notaðu minna blockchain

Allir sem vilja bóka herbergi nota þetta forrit til að leita að hótelum og herbergjum sem hýst eru á blockchain. Þegar notandi hefur valið herbergi er bókun gerð með því að senda tilskilið magn af táknum til hótelsins sem innborgun. Og til að bregðast við, uppfærir snjallsamningurinn upplýsingarnar í blockchain um að númerið sé ekki lengur tiltækt.

Það eru tvær hliðar á sveigjanleikavandanum með þessari nálgun. Í fyrsta lagi hámarksfjöldi viðskipta á sekúndu. Í öðru lagi magn gagna sem hægt er að geyma á blockchain.

Við skulum gera grófa útreikninga. Booking.com segist vera með tæplega 2 milljónir hótela skráð hjá sér. Segjum að meðalhótelið hafi 10 herbergi og hvert þeirra sé bókað aðeins 20 sinnum á ári - það gefur okkur að meðaltali 13 bókanir á sekúndu.

Til að setja þessa tölu í samhengi er rétt að taka fram að Ethereum getur unnið um það bil 15 viðskipti á sekúndu.

Á sama tíma er vert að íhuga að forritið okkar mun einnig innihalda viðskipti frá hótelum - til að hlaða niður og stöðugt uppfæra upplýsingar um herbergi þeirra. Hótel uppfæra herbergisverð mjög oft, stundum jafnvel daglega, og hver verð- eða lýsingarbreyting krefst viðskipta á blockchain.

Það eru líka stærðarvandamál hér - þyngd Ethereum blockchain fór nýlega yfir 2TB merkið. Ef forrit með þessari nálgun yrðu sannarlega vinsæl myndi Ethereum netið verða mjög óstöðugt.

Slíkt blockchain byggt kerfi getur útilokað utanaðkomandi aðila vegna óhlutdrægni þess og skorts á miðstýringu, helstu kostir blockchain tækni. En blockchain hefur líka aðra eiginleika - það er dreift og ekki endurskrifað, þetta eru frábærir eiginleikar, en þú þarft að borga fyrir þá í hraða og þóknun viðskipta.

Þess vegna verða dapp verktaki að meta vandlega hvort hver eiginleiki sem notar blockchain þurfi virkilega dreifingu og óskrifanleika.

Til dæmis: hver er ávinningurinn af því að dreifa gögnum hvers hótels yfir hundruð véla um allan heim og geyma þau þar varanlega? Er það virkilega mikilvægt að söguleg gögn um herbergisverð og framboð séu alltaf innifalin í blockchain? Örugglega ekki.

Ef við byrjum að spyrja spurninga eins og þessara, munum við byrja að sjá að við þurfum ekki endilega alla dýru blockchain eiginleikana fyrir allar aðgerðir okkar. Svo, hver er valkosturinn?

Nálgun #2: Blockstack innblásinn arkitektúr

Þó að megináherslan Blockstack á forritum þar sem notendur eru eigendur gagna sinna (td eins og Lofttexti, BentenSound, Myndfínstilling eða Graphite), blockstack hefur einnig hugmyndafræði um að nota blockchain létt - aðeins þegar brýna nauðsyn krefur. Helstu rök þeirra eru að blockchain sé hægt og dýrt og því ætti aðeins að nota það fyrir stakar eða sjaldgæfar viðskipti. Afgangurinn af samskiptum við umsóknir ætti að eiga sér stað í gegnum jafningja, þ.e. notendur dreifðra forrita verða að deila gögnum beint sín á milli, frekar en í gegnum blockchain. Eftir allt saman, voru elstu og farsælustu dreifðu forritin eins og BitTorrent, tölvupóstur og Tor búin til áður en hugmyndin um blockchain sjálft var.

Hvernig á að búa til dreifð forrit sem skalast? Notaðu minna blockchain
Vinstri: Fyrsta aðferðin, þar sem notendur hafa samskipti í gegnum blockchain. Til hægri: Notendur hafa bein samskipti sín á milli og blockchain er aðeins notuð til auðkenningar og þess háttar.

Förum aftur að hótelbókunardæminu. Við viljum óhlutdræga, óháða og opna siðareglur til að tengja gesti við hótel. Með öðrum orðum, við viljum fjarlægja miðstýrðan millilið. Við þurfum til dæmis ekki að geyma herbergisverð stöðugt í sameiginlegri dreifðri bók.

Af hverju leyfum við ekki bara gestum og hótelum að hafa bein samskipti frekar en í gegnum blockchain. Hótel geta geymt verð sín, herbergisframboð og allar aðrar upplýsingar einhvers staðar þar sem þær verða aðgengilegar öllum - til dæmis IPFS, Amazon S3 eða jafnvel þeirra eigin staðbundnu netþjóni. Þetta er nákvæmlega það sem dreifð geymslukerfi Blockstack kallaði Gaia. Það gerir notendum kleift að velja hvar þeir vilja geyma gögnin sín og stjórna því hverjir geta nálgast þau með aðferð sem kallast fjölnotendageymsla.

Til að koma á trausti eru öll hótelgögn undirrituð með dulmáli af hótelinu sjálfu. Óháð því hvar þessi gögn eru geymd, er hægt að sannreyna heilleika þeirra með því að nota opinbera lykla sem tengjast auðkenni þess hótels sem er geymt á blockchain.

Þegar um Blockstack er að ræða eru aðeins persónuupplýsingar þínar geymdar á blockchain. Upplýsingar um hvernig á að fá gögn hvers notanda eru geymdar í svæðisskrám og dreift í gegnum jafningjanet með því að nota hnúta. Og enn og aftur, þú þarft ekki að treysta gögnunum sem hnútarnir gefa, því þú getur staðfest áreiðanleika þeirra með því að bera þau saman við kjötkássa sem eru geymd í blockchain og öðrum notendum.

Í einfaldaðri útgáfu af kerfinu munu gestir nota Blockstack jafningjanetið til að leita að hótelum og fá upplýsingar um herbergin sín. Og áreiðanleika og heilleika allra gagna sem þú færð er hægt að sannreyna með því að nota opinbera lykla og kjötkássa sem eru geymd í sýndarrás Blockstack.

Þessi arkitektúr er flóknari en fyrsta aðferðin og krefst umfangsmeiri innviða. Reyndar er þetta einmitt þar sem Blockstack kemur inn og útvegar alla nauðsynlega hluti til að búa til slíkt dreifð kerfi.

Hvernig á að búa til dreifð forrit sem skalast? Notaðu minna blockchain

Með þessum arkitektúr geymum við aðeins gögn á blockchain sem raunverulega þarf að dreifa og ekki yfirskrifa. Þegar um er að ræða Blockstack þarftu aðeins viðskipti á blockchain til að skrá þig og gefa til kynna hvar gögnin þín ættu að vera geymd. Þú gætir þurft að gera fleiri færslur ef þú vilt breyta einhverjum af þessum upplýsingum, en þetta er ekki endurtekinn atburður.

Þar að auki keyrir umsóknarrökfræðin, öfugt við fyrstu nálgunina, á viðskiptavinamegin en ekki á snjöllum samningum. Þetta gerir verktaki kleift að breyta þessari rökfræði án kostnaðarsamra eða stundum jafnvel ómögulegra snjallsamningauppfærslur. Og með því að halda umsóknargögnum og rökfræði utan keðju geta dreifð forrit náð frammistöðu- og sveigjanleikastigum hefðbundinna miðstýrðra kerfa.

Ályktun

Forrit sem keyra á Blockstack geta stækkað mun betur en hefðbundin blockchain forrit, en það er yngri nálgun með eigin vandamálum og ósvaruðum spurningum.

Til dæmis, ef dreifstýrt forrit keyrir ekki á snjöllum samningum, þá dregur það úr þörfinni fyrir tól fyrir tól. Þetta gæti valdið vandamálum fyrir fyrirtæki með tilliti til þess að ICO hafa verið aðaluppspretta fjármögnunar fyrir dreifð forrit (þar á meðal Blockstack sjálft)

Það eru líka tæknileg vandamál hér. Til dæmis er tiltölulega auðvelt að innleiða hótelbókunaraðgerð í snjallsamningi, þar sem í atómaðgerðum eru herbergispantanir gerðar í skiptum fyrir tákn. Og það er ekki mjög augljóst hvernig bókun mun virka í Blockstack forriti án snjallra samninga.

Forrit sem miða á alþjóðlega markaði með möguleika fyrir milljónir notenda verða að stækka mjög vel til að ná árangri. Það eru mistök að treysta eingöngu á blockchains til að ná þessu stigi sveigjanleika í náinni framtíð. Til að geta keppt við stóra miðstýrða markaðsaðila eins og Booking.com ættu dreifðir forritaframleiðendur að íhuga aðrar aðferðir við hönnun forrita sinna, eins og þá sem Blockstack býður upp á.

Heimild: www.habr.com

Bæta við athugasemd