Kā izveidot decentralizētu lietojumprogrammu, kas tiek mērogota? Izmantojiet mazāk blokķēdes

Nē, decentralizētas lietojumprogrammas (dapp) palaiÅ”ana blokķēdē neradÄ«s veiksmÄ«gu biznesu. PatiesÄ«bā lielākā daļa lietotāju pat nedomā par to, vai lietojumprogramma darbojas blokķēdē - viņi vienkārÅ”i izvēlas produktu, kas ir lētāks, ātrāks un vienkārŔāks.

Diemžēl pat tad, ja blokķēdei ir savas unikālas funkcijas un priekÅ”rocÄ«bas, lielākā daļa lietojumprogrammu, kas tajā darbojas, ir daudz dārgākas, lēnākas un mazāk intuitÄ«vas nekā to centralizētie konkurenti.

Kā izveidot decentralizētu lietojumprogrammu, kas tiek mērogota? Izmantojiet mazāk blokķēdes

Diezgan bieži uz blokķēdes veidoto lietojumprogrammu dokumentos var atrast rindkopu, kurā teikts: "Bloku ķēde ir dārga un nevar nodroÅ”ināt nepiecieÅ”amo darÄ«jumu skaitu sekundē. Par laimi, daudzi gudri cilvēki strādā pie blokķēdes mērogoÅ”anas un lÄ«dz mÅ«su lietojumprogrammas palaiÅ”anas brÄ«dim tā kļūs diezgan mērogojama.

Vienā vienkārŔā rindkopā dapp izstrādātājs var atteikties no dziļākas diskusijas par mērogojamÄ«bas problēmām un alternatÄ«viem problēmu risinājumiem. Tas bieži noved pie neefektÄ«vas arhitektÅ«ras, kurā viedie lÄ«gumi, kas darbojas blokķēdē, kalpo kā lietojumprogrammas aizmugursistēma un kodols.

Tomēr joprojām ir nepārbaudÄ«tas pieejas decentralizētai lietojumprogrammu arhitektÅ«rai, kas ļauj nodroÅ”ināt daudz labāku mērogojamÄ«bu, samazinot atkarÄ«bu no blokķēdes. Piemēram, Blockstack strādā pie arhitektÅ«ras, kurā lielākā daļa lietojumprogrammu datu un loÄ£ikas tiek glabāta ārpus ķēdes.

Vispirms apskatÄ«sim tradicionālāku pieeju, kas izmanto blokķēdi kā tieÅ”u starpnieku starp lietojumprogrammu lietotājiem un kura mērogoÅ”ana nav Ä«paÅ”i laba.

1. pieeja: Blockchain kā aizmugursistēma

Lai lietas bÅ«tu skaidrākas, ņemsim par piemēru viesnÄ«cu nozari. Å Ä« ir milzÄ«ga nozare, kurā starpnieki, piemēram, Booking.com, viņi iekasē milzÄ«gu maksu viesu un viesnÄ«cu savienoÅ”anai.

Jebkurā situācijā, kad mēs vēlamies uzvarēt Ŕādu starpnieku, izmantojot Å”o pieeju, mēs mēģināsim atkārtot tā biznesa loÄ£iku, izmantojot viedos lÄ«gumus blokķēdē, piemēram, Ethereum.

Atvērtā pirmkoda viedie lÄ«gumi, kas darbojas "pasaules datorā", var savienot tirgotājus ar patērētājiem bez treŔās puses starplaikos, galu galā samazinot starpnieka iekasētās maksas un komisijas maksas.

Kā parādÄ«ts zemāk esoÅ”ajā attēlā, viesnÄ«cas izmanto decentralizētu lietojumprogrammu, lai blokķēdē ievietotu informāciju par numuriem, to pieejamÄ«bu un cenām darba dienās vai nedēļas nogalēs un, iespējams, pat numuru aprakstu ar visu citu bÅ«tisko informāciju.

Kā izveidot decentralizētu lietojumprogrammu, kas tiek mērogota? Izmantojiet mazāk blokķēdes

Ikviens, kurÅ” vēlas rezervēt istabu, izmanto Å”o lietojumprogrammu, lai meklētu viesnÄ«cas un numurus, kas izvietoti blokķēdē. Kad lietotājs ir izvēlējies numuru, rezervācija tiek veikta, nosÅ«tot viesnÄ«cai nepiecieÅ”amo žetonu daudzumu kā depozÄ«tu. Un, atbildot uz to, viedais lÄ«gums atjaunina informāciju blokķēdē, ka numurs vairs nav pieejams.

Ar Å”o pieeju mērogojamÄ«bas problēmai ir divas puses. Pirmkārt, maksimālais darÄ«jumu skaits sekundē. Otrkārt, datu apjoms, ko var saglabāt blokķēdē.

Veiksim dažus aptuvenus aprēķinus. Vietne Booking.com saka, ka viņiem ir reÄ£istrēti gandrÄ«z 2 miljoni viesnÄ«cu. Pieņemsim, ka vidējā viesnÄ«cā ir 10 numuri, un katrs no tiem tiek rezervēts tikai 20 reizes gadā ā€” tas dod mums vidēji 13 rezervācijas sekundē.

Lai aplÅ«kotu Å”o skaitli perspektÄ«vā, ir vērts atzÄ«mēt, ka Ethereum var apstrādāt aptuveni 15 darÄ«jumus sekundē.

Tajā paŔā laikā ir vērts padomāt, ka mÅ«su lietojumprogrammā bÅ«s arÄ« darÄ«jumi no viesnÄ«cām - lai lejupielādētu un pastāvÄ«gi atjauninātu informāciju par viņu numuriem. ViesnÄ«cas ļoti bieži atjaunina numuru cenas, dažreiz pat katru dienu, un katrai cenas vai apraksta maiņai ir nepiecieÅ”ams darÄ«jums blokķēdē.

Å eit ir arÄ« problēmas ar izmēru - Ethereum blokķēdes svars nesen pārsniedza 2 TB atzÄ«mi. Ja lietojumprogrammas ar Å”o pieeju kļūtu patiesi populāras, Ethereum tÄ«kls kļūtu ārkārtÄ«gi nestabils.

Šāda uz blokķēdes balstÄ«ta sistēma var izslēgt nepiederoÅ”os tās objektivitātes un centralizācijas trÅ«kuma dēļ, kas ir galvenās blokķēdes tehnoloÄ£ijas priekÅ”rocÄ«bas. Bet blokķēdei ir arÄ« citas iespējas ā€“ tā tiek izplatÄ«ta nevis pārrakstÄ«ta, tās ir izcilas Ä«paŔības, taču par tām ir jāmaksā darÄ«jumu ātrumā un komisijā.

Tāpēc dapp izstrādātājiem rÅ«pÄ«gi jāizvērtē, vai katrai funkcijai, kas izmanto blokķēdi, patieŔām ir nepiecieÅ”ama izplatÄ«Å”ana un neierakstāmÄ«ba.

Piemēram: kāds ir ieguvums no katras viesnÄ«cas datu izplatÄ«Å”anas simtiem iekārtu visā pasaulē un pastāvÄ«ga to glabāŔana? Vai tieŔām ir svarÄ«gi, lai blokķēdē vienmēr tiktu iekļauti vēsturiskie dati par numuru cenām un pieejamÄ«bu? Visticamāk ne.

Ja mēs sāksim uzdot Ŕādus jautājumus, mēs sāksim redzēt, ka mums ne vienmēr ir vajadzÄ«gas visas dārgās blokķēdes funkcijas visām mÅ«su funkcijām. Tātad, kāda ir alternatÄ«va?

2. pieeja: Blockstack iedvesmota arhitektÅ«ra

Lai gan galvenais uzsvars Bloķēt lietojumprogrammās, kurās lietotāji ir savu datu Ä«paÅ”nieki (piemēram, piemēram, Gaisa teksts, BentenSound, Attēlu optimizētājs vai grafÄ«ts), blokskolā ir arÄ« filozofija par blokķēdes vieglu izmantoÅ”anu ā€” tikai tad, ja tas ir absolÅ«ti nepiecieÅ”ams. Viņu galvenais arguments ir tāds, ka blokķēde ir lēna un dārga, un tāpēc to vajadzētu izmantot tikai vienreizējiem vai retiem darÄ«jumiem. Pārējai mijiedarbÄ«bai ar lietojumprogrammām vajadzētu notikt, izmantojot vienādranga tÄ«klu, t.i. decentralizēto lietojumprogrammu lietotājiem ir jādalās ar datiem tieÅ”i vienam ar otru, nevis izmantojot blokķēdi. Galu galā vecākās un veiksmÄ«gākās decentralizētās lietojumprogrammas, piemēram, BitTorrent, e-pasts un Tor, tika izveidotas pirms paÅ”as blokķēdes koncepcijas.

Kā izveidot decentralizētu lietojumprogrammu, kas tiek mērogota? Izmantojiet mazāk blokķēdes
Pa kreisi: pirmā pieeja, kurā lietotāji mijiedarbojas, izmantojot blokķēdi. Pa labi: lietotāji mijiedarbojas tieÅ”i viens ar otru, un blokķēde tiek izmantota tikai identifikācijai un tamlÄ«dzÄ«gi.

AtgriezÄ«simies pie viesnÄ«cu rezervÄ“Å”anas piemēra. Mēs vēlamies objektÄ«vu, neatkarÄ«gu un atklātu protokolu viesu savienoÅ”anai ar viesnÄ«cām. Citiem vārdiem sakot, mēs vēlamies noņemt centralizēto starpnieku. Mums nav nepiecieÅ”ams, piemēram, pastāvÄ«gi glabāt telpu cenas kopējā sadalÄ«tā virsgrāmatā.

Kāpēc mēs vienkārÅ”i neļaujam viesiem un viesnÄ«cām mijiedarboties tieÅ”i, nevis izmantojot blokķēdi. ViesnÄ«cas var glabāt savas cenas, numuru pieejamÄ«bu un jebkuru citu informāciju kaut kur, kur tā bÅ«s pieejama ikvienam ā€“ piemēram, IPFS, Amazon S3 vai pat savs lokālais serveris. TieÅ”i to sauca Blockstack decentralizētā uzglabāŔanas sistēma Gaia. Tas ļauj lietotājiem izvēlēties, kur viņi vēlas glabāt savus datus, un kontrolēt, kas var tiem piekļūt, izmantojot pieeju, ko sauc vairāku lietotāju krātuve.

Lai izveidotu uzticÄ«bu, visus viesnÄ«cas datus kriptogrāfiski paraksta pati viesnÄ«ca. NeatkarÄ«gi no tā, kur Å”ie dati tiek glabāti, to integritāti var pārbaudÄ«t, izmantojot publiskās atslēgas, kas saistÄ«tas ar Ŕīs viesnÄ«cas identitāti, kas glabājas blokķēdē.

Blockstack gadījumā blokķēdē tiek glabāta tikai jūsu identitātes informācija. Informācija par to, kā iegūt katra lietotāja datus, tiek glabāta zonas failos un tiek izplatīta vienādranga tīklā, izmantojot mezglus. Un vēlreiz, jums nav jāuzticas datiem, ko sniedz mezgli, jo varat pārbaudīt to autentiskumu, salīdzinot tos ar jaucējkodiem, kas tiek glabāti blokķēdē un citiem lietotājiem.

Sistēmas vienkārÅ”otajā versijā viesi izmantos Blockstack peer-to-peer tÄ«klu, lai meklētu viesnÄ«cas un iegÅ«tu informāciju par saviem numuriem. Un visu saņemto datu autentiskumu un integritāti var pārbaudÄ«t, izmantojot saglabātās publiskās atslēgas un jaucējus virtuālā ķēde Blockstack.

Å Ä« arhitektÅ«ra ir sarežģītāka nekā pirmā pieeja, un tai ir nepiecieÅ”ama visaptveroŔāka infrastruktÅ«ra. Faktiski tieÅ”i Å”eit darbojas Blockstack, nodroÅ”inot visus nepiecieÅ”amos komponentus Ŕādas decentralizētas sistēmas izveidei.

Kā izveidot decentralizētu lietojumprogrammu, kas tiek mērogota? Izmantojiet mazāk blokķēdes

Izmantojot Å”o arhitektÅ«ru, mēs blokķēdē glabājam tikai datus, kas faktiski ir jāizplata, nevis jāpārraksta. Blockstack gadÄ«jumā jums ir nepiecieÅ”ami tikai darÄ«jumi blokķēdē, lai reÄ£istrētos un norādÄ«tu, kur jÅ«su dati ir jāuzglabā. Ja vēlaties mainÄ«t kādu no Ŕīs informācijas, iespējams, jums bÅ«s jāveic vairāk darÄ«jumu, taču tas nav periodisks notikums.

Turklāt lietojumprogrammas loÄ£ika atŔķirÄ«bā no pirmās pieejas darbojas klienta pusē, nevis viedos lÄ«gumos. Tas ļauj izstrādātājam mainÄ«t Å”o loÄ£iku bez dārgiem vai dažreiz pat neiespējamiem viedo lÄ«gumu atjauninājumiem. Un, saglabājot lietojumprogrammu datus un loÄ£iku ārpus ķēdes, decentralizētās lietojumprogrammas var sasniegt tradicionālo centralizēto sistēmu veiktspējas un mērogojamÄ«bas lÄ«meni.

Secinājums

Lietojumprogrammas, kas darbojas Blockstack, var mērogot daudz labāk nekā parastās blokķēdes lietojumprogrammas, taču tā ir jaunāka pieeja ar savām problēmām un neatbildētiem jautājumiem.

Piemēram, ja decentralizēta lietojumprogramma nedarbojas ar viedajiem lÄ«gumiem, tas samazina vajadzÄ«bu pēc lietderÄ«bas marÄ·ieriem. Tas varētu radÄ«t problēmas uzņēmumiem, ņemot vērā, ka ICO ir bijis galvenais decentralizēto lietojumprogrammu (tostarp paÅ”u Blockstack) finansējuma avots.

Å eit ir arÄ« tehniskas problēmas. Piemēram, viedā lÄ«gumā ir salÄ«dzinoÅ”i vienkārÅ”i ieviest viesnÄ«cu rezervÄ“Å”anas funkciju, kur atomoperācijā telpu rezervācijas tiek veiktas apmaiņā pret žetoniem. Un nav Ä«sti skaidrs, kā rezervÄ“Å”ana darbosies Blockstack lietojumprogrammā bez viediem lÄ«gumiem.

Lietotnēm, kuru mērÄ·auditorija ir globālie tirgi ar potenciālu miljoniem lietotāju, ir ļoti labi jāmēro, lai tās bÅ«tu veiksmÄ«gas. Tā ir kļūda paļauties tikai uz blokķēdēm, lai tuvākajā nākotnē sasniegtu Å”o mērogojamÄ«bas lÄ«meni. Lai varētu konkurēt ar lieliem centralizēta tirgus spēlētājiem, piemēram, Booking.com, decentralizēto lietojumprogrammu izstrādātājiem ir jāapsver alternatÄ«vas pieejas savu lietojumprogrammu izstrādei, piemēram, Blockstack piedāvātā pieeja.

Avots: www.habr.com

Pievieno komentāru