TÄtad, jÅ«su komanda ir pabeigusi jÅ«su blokÄ·Ädes alfa versiju, un ir pienÄcis laiks palaist testnet un pÄc tam mainnet. Jums ir Ä«sta blokÄ·Äde ar neatkarÄ«giem dalÄ«bniekiem, labs ekonomiskais modelis, droŔība, esat izstrÄdÄjis pÄrvaldÄ«bu, un tagad ir laiks to visu izmÄÄ£inÄt darbÄ«bÄ. IdeÄlÄ kriptoanarhiskÄ pasaulÄ jÅ«s ievietojat tÄ«klÄ Ä£enÄzes bloku, mezgla gala kodu un paÅ”i validatori visu palaiž, paaugstina visus palÄ«gpakalpojumus, un viss notiek pats no sevis. Bet tas ir izdomÄtÄ pasaulÄ, bet reÄlajÄ pasaulÄ komandai ir jÄsagatavo diezgan daudz palÄ«gprogrammatÅ«ras un dažÄdas manipulÄcijas, lai palÄ«dzÄtu pÄrbaudÄ«tÄjiem palaist stabilu tÄ«klu. Par to ir Å”is raksts.
TÄ«klu palaiÅ”ana, balstoties uz āpierÄdÄ«jums-of-stakeā tipa konsensiem, kur vÄrtÄtÄjus nosaka sistÄmas marÄ·ieru turÄtÄju balsis, ir diezgan specifisks notikums, jo pat tradicionÄlo, centralizÄti pÄrvaldÄ«to sistÄmu ar desmitiem un simtiem serveru palaiÅ”ana nav viegls uzdevums. uzdevums pats par sevi, un blokÄ·Äde ir jÄuzsÄk ar lojÄliem, bet neatkarÄ«giem dalÄ«bniekiem. Un, ja korporÄcijÄ, startÄjot, administratoriem ir pilna piekļuve visÄm maŔīnÄm, žurnÄliem, vispÄrÄjai uzraudzÄ«bai, tad validatori neļaus nevienam piekļūt saviem serveriem un, visticamÄk, dos priekÅ”roku infrastruktÅ«ras izveidei neatkarÄ«gi, jo tÄ kontrolÄ piekļuvi. uz galvenajiem vÄrtÄtÄja aktÄ«viem - likmÄm vÄlÄtÄjiem. TieÅ”i Ŕī uzvedÄ«ba ļauj veidot izkliedÄtus droÅ”us tÄ«klus - izmantoto mÄkoÅpakalpojumu sniedzÄju neatkarÄ«ba, virtuÄlie un āneatkarÄ«gieā serveri, dažÄdas operÄtÄjsistÄmas, tas viss ļauj uzbrukumus Å”Ädam tÄ«klam padarÄ«t ÄrkÄrtÄ«gi neefektÄ«vus - pÄrÄk daudz atŔķirÄ«gu tiek izmantota programmatÅ«ra. PiemÄram, Ethereum izmanto divus galvenos mezglu implementÄcijas: Go un Rust, un uzbrukums, kas ir efektÄ«vs vienai ievieÅ”anai, nedarbojas otrai.
TÄpÄc visi blokÄ·Äžu palaiÅ”anas un darbÄ«bas procesi ir jÄorganizÄ tÄ, lai jebkurÅ” validators vai pat neliela validatoru grupa jebkurÄ brÄ«dÄ« varÄtu izmest savus datorus pa logu un aiziet, kamÄr nekas nedrÄ«kst salÅ«zt un pÄrÄjiem validÄtÄjiem vajadzÄtu turpinÄt efektÄ«vi atbalstÄ«t darbÄ«bas tÄ«klu un pievienot jaunus validatorus. UzsÄkot tÄ«klu, kad viens validators atrodas EiropÄ, otrs DienvidamerikÄ, bet treÅ”ais ÄzijÄ, ir diezgan grÅ«ti panÄkt vairÄku desmitu neatkarÄ«gu grupu saskaÅotu darbu un rezultÄtÄ tÄs ieinteresÄt.
Validatori
IedomÄsimies hipotÄtiskas modernas blokÄ·Ädes palaiÅ”anu (lielÄkÄ daļa no aprakstÄ«tÄ ir piemÄrota blokÄ·ÄdÄm, kuru pamatÄ ir jebkura moderna blokÄ·Äžu saime: Ethereum, EOS, Polkadot, Cosmos un citas, kas nodroÅ”ina vienprÄtÄ«bu par likmÄm. Galvenie varoÅi Å”Ädas blokÄ·Ädes ir pÄrbaudÄ«tÄju komandas, kas nodarbojas ar savu neatkarÄ«go serveru instalÄÅ”anu, kas apstiprina un ražo jaunus blokus, un saÅem tÄ«kla nodroÅ”inÄtÄs atlÄ«dzÄ«bas tiem, kas piedalÄs vienprÄtÄ«bÄ. Lai uzsÄktu jaunus tÄ«klus, ir nepiecieÅ”ami vairÄki desmiti pÄrbaudÄ«tÄju (tik daudzi tagad var vairÄk vai mazÄk efektÄ«vi panÄk konsensu sekundÄs), tÄpÄc projektÄ tiek izsludinÄta reÄ£istrÄcija, kurÄ validatori dalÄs ar lietotÄjiem publisko informÄciju par sevi, pÄrliecinot viÅus, ka viÅi gatavojas sniegt kvalitatÄ«vu pakalpojumu uzsÄktajam tÄ«klam.
ValidÄcija ir bizness, kas ļauj ÄrkÄrtÄ«gi precÄ«zi novÄrtÄt validatora potenciÄlos ienÄkumus, Ätri pÄrnest jaudu starp projektiem un, ja viÅa izvÄlÄtais tÄ«kls ir veiksmÄ«gs, validators kÄ pilntiesÄ«gs DAO dalÄ«bnieks un atbildÄ«ga persona var izstrÄdÄt projektu, vai vienkÄrÅ”i nodroÅ”inÄt izcilu tehnisko apkalpoÅ”anu par pilnÄ«gi caurspÄ«dÄ«gu, godÄ«gi nopelnÄ«tu naudu. AprÄÄ·inot atlÄ«dzÄ«bu vÄrtÄtÄjiem, projekti cenÅ”as Åemt vÄrÄ vÄrtÄtÄju izmaksas un padarÄ«t atlÄ«dzÄ«bu par blokiem tÄdu, lai Å”is bizness bÅ«tu rentabls, bet tajÄ paÅ”Ä laikÄ neļauj vÄrtÄtÄjiem sagraut ekonomiku, pÄrpludinot tos ar naudu un liedzot to citiem tÄ«kla lietotÄjiem.
Validatoru bizness prasa nodroÅ”inÄt augstu pakalpojumu kļūdu toleranci, kas nozÄ«mÄ augstu devops un izstrÄdÄtÄju apmÄcÄ«bas lÄ«meni un dÄrgus skaitļoÅ”anas resursus. Pat bez nepiecieÅ”amÄ«bas iegÅ«t jaucÄjus darba pÄrbaudes tÄ«klos, blokÄ·Ädes mezgls ir liels pakalpojums, kas aizÅem daudz atmiÅas, patÄrÄ daudz aprÄÄ·inu, validÄ, raksta uz diska un nosÅ«ta lielu datu apjomu uz tÄ«klu. . Lai saglabÄtu darÄ«jumu žurnÄlus un bloku Ä·Ädes blokÄ·Ädei ar vairÄkiem tÅ«kstoÅ”iem mazu darÄ«jumu blokÄ, tagad ir nepiecieÅ”ama 50 Gb vai lielÄka krÄtuve, un blokiem tam ir jÄbÅ«t SSD. Valsts blokÄ·Äžu datubÄze ar viedo lÄ«gumu atbalstu jau var pÄrsniegt 64Gb RAM. Serveri ar nepiecieÅ”amajiem parametriem ir diezgan dÄrgi; Ethereum vai EOS mezgls var maksÄt no 100 lÄ«dz 200 USD mÄnesÄ«. Pievienojiet tam palielinÄtÄs algas par diennakts darbu izstrÄdÄtÄjiem un devopiem, kuri palaiÅ”anas periodÄ risina problÄmas pat naktÄ«, jo daži validatori var viegli atrasties citÄ puslodÄ. TomÄr Ä«stajos brīžos validatora mezgla Ä«paÅ”ums var nest nopietnus ienÄkumus (EOS gadÄ«jumÄ lÄ«dz USD 10 000 dienÄ).
ValidÄcija ir tikai viena no jaunajÄm potenciÄlajÄm IT lomÄm uzÅÄmÄjiem un uzÅÄmumiem; programmÄtÄjiem nÄkot klajÄ ar arvien sarežģītÄkiem algoritmiem, kas atalgo godÄ«gumu un soda par krÄpÅ”anu un zÄdzÄ«bu, parÄdÄs servisi, kas veic svarÄ«gu datu publicÄÅ”anas (orÄkulu) funkcijas, veic uzraudzÄ«bu. (depozÄ«tu grieÅ”ana un krÄpnieku sodÄ«Å”ana, publicÄjot pierÄdÄ«jumus par maldinÄÅ”anu), strÄ«du izŔķirÅ”anas pakalpojumi, apdroÅ”inÄÅ”ana un opcijas, pat atkritumu izveÅ”ana ir potenciÄli liels viedo lÄ«gumu sistÄmu tirgus, kurÄ ir jÄmaksÄ par datu uzglabÄÅ”anu.
ProblÄmas ar blokÄ·Ädes palaiÅ”anu
BlokÄ·Ädes atvÄrtÄ«ba, kas ļÄva datoriem no jebkuras valsts brÄ«vi piedalÄ«ties tÄ«klÄ, un jebkura skripta mazuļa savienoÅ”anas vieglums ar tÄ«klu saskaÅÄ ar GitHub norÄdÄ«jumiem, ne vienmÄr ir priekÅ”rocÄ«ba. TiekÅ”anÄs pÄc jauna žetona nereti liek vÄrtÄtÄjiem āsÄkumÄ iegÅ«t jaunu monÄtuā, cerot, ka likme pieaugs un iespÄja Ätri zaudÄt savus ienÄkumus. Tas arÄ« nozÄ«mÄ, ka jÅ«su vÄrtÄtÄjs var bÅ«t jebkurÅ”, pat anonÄ«ms, jÅ«s varat par viÅu balsot tÄpat kÄ par citiem vÄrtÄtÄjiem (tomÄr anonÄ«mam bÅ«s grÅ«ti savÄkt ieinteresÄto personu balsis par sevi, tÄpÄc mÄs biedÄjoÅ”Äs pasakas par anonÄ«majÄm kriptovalÅ«tÄm atstÄs politiÄ·u ziÅÄ). tomÄr
Projekta komandai ir uzdevums - kaut kÄdÄ veidÄ iekļūt savÄ tÄ«klÄ tos, kuri nÄkotnÄ spÄs nodroÅ”inÄt stabilu mezglu darbÄ«bu, izprot droŔību, prot Ätri atrisinÄt problÄmas, sadarboties ar citiem validatoriem un rÄ«koties kopÄ - tÄ kvalitÄte ļoti daudz kas ir pilnÄ«bÄ atkarÄ«gs no Ŕīm Ä«paŔībÄm, kas ir žetons, kurÄ tÄ«kla dalÄ«bnieki gatavojas ieguldÄ«t savu laiku un resursus. AdekvÄti dibinÄtÄji, izvÄrtÄjot riskus, labi saprot, ka, palaižot Å”Äda izmÄra programmatÅ«ru, noteikti nÄksies saskarties ar kļūdÄm mezglu kodÄ un konfigurÄcijÄ un ka tÄ«kla stabilitÄte ir atkarÄ«ga no tÄ, cik labi izstrÄdÄtÄji un pÄrbaudÄ«tÄji kopÄ«gi atrisinÄs. tÄdas problÄmas.
Komanda ir gatava balsot mainnetÄ par jebkuriem validÄtÄjiem, lai tikai zinÄtu, kuri, kuri ir labi? LielÄkais portfelis? Tagad gandrÄ«z nevienam tÄ nav. Pamatojoties uz komandas Linkedin profiliem? PieredzÄjuÅ”i devops vai droŔības speciÄlisti jums nedos nekÄdus Linkedin profilus. SaskaÅÄ ar paziÅojumiem tÄrzÄÅ”anÄ, ziÅÄs un palÄ«dzot citiem sagatavoÅ”anÄs posmÄ? Labi, bet subjektÄ«vi un neprecÄ«zi.
Å Ädos apstÄkļos paliek viena lieta - kaut kas, kas labi atrisina katra problÄmas - spÄle, kurÄ bÅ«s iespÄjams atlasÄ«t labÄkos validÄtÄjus, bet galvenais ir pÄrbaudÄ«t blokÄ·Ädes spÄku un veikt pilna mÄroga kaujas pÄrbaudi. blokÄ·Äde aktÄ«vas lietoÅ”anas apstÄkļos, vienprÄtÄ«bas izmaiÅas, izskats un kļūdu laboÅ”ana . Pirmo reizi Å”o procedÅ«ru kÄ spÄli prezentÄja Cosmos projekta puiÅ”i, un Ŕī ideja neapÅ”aubÄmi ir lielisks veids, kÄ sagatavot tÄ«klu uzticama un pret defektiem izturÄ«ga tÄ«kla palaiÅ”anai.
Validatoru spÄle
Es aprakstÄ«Å”u validatoru spÄli tÄdu, kÄdu mÄs to izstrÄdÄjÄm DAO.Casino (DAOBet) blokÄ·Ädei, kuras pamatÄ ir EOS fork, kas tiek saukta par Haya un kurai ir lÄ«dzÄ«gs pÄrvaldÄ«bas mehÄnisms - validatorus izvÄlas, balsojot no jebkura konta, kurÄ daļa no atlikums, kas izmantots, lai balsotu par validatoru, ir iesaldÄts. JebkurÅ” konts, kura bilancÄ ir galvenais BET marÄ·ieris, var balsot par atlasÄ«to pÄrbaudÄ«tÄju ar jebkuru tÄ bilances daļu. Balsis tiek summÄtas un, pamatojoties uz rezultÄtiem, tiek veidoti labÄkie vÄrtÄtÄji. DažÄdÄs blokÄ·ÄdÄs Å”is process tiek organizÄts atŔķirÄ«gi, un parasti tieÅ”i Å”ajÄ daÄ¼Ä jaunÄ blokÄ·Äde atŔķiras no vecÄkÄ·Ädes, un jÄsaka, ka mÅ«su gadÄ«jumÄ EOS pilnÄ«bÄ attaisno āOSā savÄ nosaukumÄ, mÄs tieÅ”Äm izmantojam EOS. kÄ bÄzes operÄtÄjsistÄmu modificÄtas blokÄ·Ädes versijas izvietoÅ”anai DAOBet uzdevumiem.
Es aprakstÄ«Å”u atseviŔķas problÄmas un to, kÄ tÄs var atrisinÄt spÄles ietvaros. IedomÄsimies tÄ«klu, kurÄ var atklÄti uzbrukt jÅ«su serverim, kurÄ, lai saglabÄtu validatora pozÄ«ciju, jums ir nepÄrtraukti jÄsadarbojas ar tÄ«klu, reklamÄjot savu pÄrbaudÄ«tÄju un pÄrliecinoties, ka viÅÅ” veido blokus un tie tiek piegÄdÄti citiem pÄrbaudÄ«tÄjiem laikÄ, pretÄjÄ gadÄ«jumÄ validators tiks izmests no saraksta.
KÄ izvÄlÄties labÄkos uzvarÄtÄjus?
SpÄles galvenÄ tehniskÄ prasÄ«ba ir, lai tÄs rezultÄti bÅ«tu publiski pÄrbaudÄmi. Tas nozÄ«mÄ, ka spÄles rezultÄti: TOP uzvarÄtÄji, jÄveido stingri pamatojoties uz datiem, kurus var pÄrbaudÄ«t jebkurÅ” dalÄ«bnieks. CentralizÄtÄ sistÄmÄ mÄs varÄtu izmÄrÄ«t katra validatora ādarbspÄjas laikuā un apbalvot tos, kuri bija tieÅ”saistÄ visvairÄk vai izlaida maksimÄlo tÄ«kla trafiku. Varat apkopot datus par procesora un atmiÅas slodzi un apbalvot tos, kuri ir strÄdÄjuÅ”i labi. Bet jebkura Å”Äda metriku apkopoÅ”ana nozÄ«mÄ savÄkÅ”anas centra esamÄ«bu, un visi mezgli ir neatkarÄ«gi un var rÄ«koties, kÄ vÄlas, un sÅ«tÄ«t jebkÄdus datus.
TÄpÄc dabisks risinÄjums ir, ka uzvarÄtÄji jÄnosaka, pamatojoties uz datiem no blokÄ·Ädes, jo to var izmantot, lai redzÄtu, kurÅ” validators izveidoja kuru bloku un kÄdi darÄ«jumi tajÄ tika iekļauti. MÄs Å”o numuru saucÄm par Validator Points (VP), un to nopelnÄ«Å”ana ir galvenais validatoru mÄrÄ·is spÄlÄ. MÅ«su gadÄ«jumÄ vienkÄrÅ”Äkais, viegli publiski pÄrbaudÄmais un efektÄ«vÄkais validatora ālietderÄ«basā rÄdÄ«tÄjs ir VP = validatora izveidoto bloku skaits noteiktÄ laika periodÄ.
Å Ä« vienkÄrÅ”Ä izvÄle ir saistÄ«ta ar to, ka EOS pÄrvaldÄ«ba jau tagad nodroÅ”ina daudzas jaunas problÄmas, jo EOS ir trÄ«s reÄli strÄdÄjoÅ”u blokÄ·Äžu mantiniece ar lielu pieredzi sarežģītÄ tÄ«kla pÄrvaldÄ«bÄ un gandrÄ«z jebkuras validatora problÄmas ar tÄ«klu, procesoru, disks rada tikai vienu problÄmu - viÅÅ” paraksta mazÄk bloku, saÅem mazÄku samaksu par darbu, kas atkal noved mÅ«s vienkÄrÅ”i pie parakstÄ«to bloku skaita - EOS Ŕī ir lieliska un vienkÄrÅ”a iespÄja.
CitÄm blokÄ·ÄdÄm Validatora punktu aprÄÄ·inÄÅ”anas veids var atŔķirties, piemÄram, uz pBFT balstÄ«tiem konsensiem (Tendermint/Cosmos, Aura consensus from Parity Substrate), kur katrs bloks jÄparaksta vairÄkiem pÄrbaudÄ«tÄjiem, ir lietderÄ«gi skaitÄ«t atseviŔķu validatoru. parakstus, nevis blokus. Var bÅ«t lietderÄ«gi Åemt vÄrÄ nepilnÄ«gas konsensa raundas, kas izŔķÄrdÄ citu pÄrbaudÄ«tÄju resursus, kopumÄ tas lielÄ mÄrÄ ir atkarÄ«gs no vienprÄtÄ«bas veida.
KÄ simulÄt reÄlus darbÄ«bas apstÄkļus
DibinÄtÄju uzdevums ir pÄrbaudÄ«t validatorus apstÄkļos, kas ir tuvu realitÄtei, bez centralizÄtas kontroles. Å o problÄmu var atrisinÄt, izmantojot jaucÄjkrÄna lÄ«gumu, kas vienÄdÄs daļÄs galvenÄ marÄ·iera sadala pÄrbaudÄ«tÄjiem un visiem pÄrÄjiem. Lai saÅemtu žetonus savÄ bilancÄ, jums ir jÄizveido transakcija un jÄnodroÅ”ina, lai tÄ«kls to iekļautu blokÄ. TÄdÄjÄdi, lai uzvarÄtu, vÄrtÄtÄjam pastÄvÄ«gi jÄpapildina savs bilance ar jauniem žetoniem un jÄbalso par sevi, virzot sevi uz augÅ”u. Å Ä« darbÄ«ba rada pastÄvÄ«gu tÄ«kla slodzi, un parametrus var izvÄlÄties tÄ, lai pieprasÄ«jumu plÅ«sma bÅ«tu pietiekami spÄcÄ«ga pilna tÄ«kla pÄrbaudes veikÅ”anai. TÄpÄc iepriekÅ” plÄnojiet jaucÄjkrÄna lÄ«gumu kÄ svarÄ«gu rÄ«ku tÄ«kla palaiÅ”anai un sÄciet iepriekÅ” izvÄlÄties tÄ parametrus.
Žetonu pieprasÄ«Å”ana no krÄna un balsu apstiprinÄÅ”ana joprojÄm pilnÄ«bÄ neatdarina kaujas galviÅas darbÄ«bu, it Ä«paÅ”i ÄrkÄrtÄ«gi noslogotos režīmos. TÄpÄc blokÄ·Ädes komandai joprojÄm bÅ«s jÄraksta papildu etaloni vienÄ vai otrÄ veidÄ, lai ielÄdÄtu tÄ«klu. ÄŖpaÅ”u lomu tajÄ spÄlÄ Ä«paÅ”i izveidoti viedie lÄ«gumi, kas ļauj testÄt atseviŔķu apakÅ”sistÄmu. Lai pÄrbaudÄ«tu krÄtuvi, lÄ«gums blokÄ·ÄdÄ glabÄ nejauÅ”us datus, savukÄrt, lai pÄrbaudÄ«tu tÄ«kla resursus, testa lÄ«gumÄ ir nepiecieÅ”ams liels ievades datu apjoms, tÄdÄjÄdi palielinot darÄ«jumu apjomu - uzsÄkot Å”Ädu darÄ«jumu plÅ«smu patvaļīgos laika punktos, komanda vienlaikus pÄrbauda koda stabilitÄti un validatoru spÄku.
AtseviŔķa problÄma ir mezglu koda atjauninÄÅ”ana un cieto dakÅ”u vadÄ«Å”ana. Kļūdas, ievainojamÄ«bas vai ļaunprÄtÄ«gu pÄrbaudÄ«tÄju slepenas vienoÅ”anÄs gadÄ«jumÄ pÄrbaudÄ«tÄjiem ir jÄbÅ«t rÄ«cÄ«bas plÄnam, kas jau ir izstrÄdÄts validatoru spÄlÄ. Å eit jÅ«s varat izdomÄt shÄmas VP uzkrÄÅ”anai Ätrai cietÄs dakÅ”as pielietoÅ”anai, piemÄram, uzliekot naudas sodu visiem validÄtÄjiem, kuri vÄl nav izlaiduÅ”i jaunu mezgla koda versiju, taÄu to ir grÅ«ti ieviest un aprÄÄ·ini apgrÅ«tina. JÅ«s varat simulÄt situÄciju, kad avÄrijas gadÄ«jumÄ tiek izmantota cietÄ dakÅ”a, mÄkslÄ«gi āsalaužotā blokÄ·Ädi konkrÄtajÄ blokÄ. Bloku ražoÅ”ana apstÄjas, un galu galÄ ieguvÄji bÅ«s tie, kuri pirmie iestÄsies un sÄks parakstÄ«t blokus, tÄpÄc VP, pamatojoties uz parakstÄ«to bloku skaitu, Å”eit ir piemÄrots.
KÄ informÄt dalÄ«bniekus par tÄ«kla statusu un novÄrst kļūdas
Neskatoties uz neuzticÄ«bu starp pÄrbaudÄ«tÄjiem, savlaicÄ«ga jaunÄkÄs informÄcijas saÅemÅ”ana par tÄ«kla stÄvokli ir izdevÄ«ga ikvienam, lai ÄtrÄk pieÅemtu lÄmumus, tÄpÄc projekta komanda izvirza pakalpojumu daudzu metriku apkopoÅ”anai un vizualizÄÅ”anai no validatora serveriem, kas ļauj vienlaikus redzÄt situÄciju visÄ tÄ«klÄ, ļaujot Ätri noteikt, kas notiek. TÄpat gan pÄrbaudÄ«tÄjiem, gan projektam ir izdevÄ«gi, ka projekta komanda Ätri izlabo atrastÄs kļūdas, tÄpÄc papildus metriku apkopoÅ”anai ir jÄga nekavÄjoties sÄkt vÄkt žurnÄlus un kļūdu datus no validatoru maŔīnÄm blokÄ·Ädei pieejamÄ maŔīnÄ. izstrÄdÄtÄjiem. Å eit nevienam nav izdevÄ«gi sagrozÄ«t informÄciju, tÄpÄc Å”os pakalpojumus izstrÄdÄ projekta komanda un tiem var uzticÄties. Ir lietderÄ«gi apkopot sistÄmas rÄdÄ«tÄjus no validatoriem, un, protams, vissvarÄ«gÄkie paÅ”as blokÄ·Ädes rÄdÄ«tÄji - DAOBet - ir pabeigÅ”anas laiks un pÄdÄjÄ pabeigtÄ bloka nobÄ«de. Pateicoties tam, komanda saskata, ka, izpildot etalonu, palielinÄs atmiÅas patÄriÅÅ” mezglos, problÄmas ar atseviŔķiem pÄrbaudÄ«tÄjiem
SvarÄ«gi punkti validatora spÄles vadÄ«Å”anai
KÄ izrÄdÄs, ja vÄlaties oficiÄli ļaut validatoriem uzbrukt vienam otra maŔīnÄm (neoficiÄli viÅi to var darÄ«t tik un tÄ), jums tas ir atseviŔķi juridiski jÄformulÄ kÄ droŔības pÄrbaude, jo saskaÅÄ ar dažu valstu likumiem DDoS vai tÄ«kla uzbrukumi var bÅ«t sodÄ«ts. VÄl viens svarÄ«gs jautÄjums ir par to, kÄ apbalvot vÄrtÄtÄjus. DabiskÄs balvas ir projekta žetoni, kas tiks pÄrsÅ«tÄ«ti uz galveno tÄ«klu, taÄu masveida žetonu izplatÄ«Å”ana ikvienam, kurÅ” varÄja palaist mezglu, arÄ« nav labÄkais risinÄjums. VisticamÄk, jums bÅ«s jÄbalansÄ starp divÄm galÄjÄm iespÄjÄm:
Sadaliet visu balvu fondu atbilstoŔi nopelnītajam VP
tas ir ļoti demokrÄtisks un ļauj nopelnÄ«t naudu ikvienam, kurÅ” ir ieguldÄ«jis laiku un resursus validatora spÄlÄ
bet piesaista spÄlei nejauÅ”us cilvÄkus bez sagatavotas infrastruktÅ«ras
Sadaliet labÄko N balvu fondu pÄrbaudÄ«tÄjiem, pamatojoties uz spÄles rezultÄtiem
UzvarÄtÄji, visticamÄk, bÅ«s tie vÄrtÄtÄji, kuri spÄles laikÄ izturÄja visnoturÄ«gÄk un ir ļoti stingri apÅÄmuÅ”ies uzvarÄt
daži vÄrtÄtÄji nevÄlÄsies piedalÄ«ties, jo zemi novÄrtÄ viÅu izredzes uzvarÄt, it Ä«paÅ”i, ja dalÄ«bnieku vidÅ« ir cienÄ«jami vÄrtÄtÄji
Kuru iespÄju izvÄlÄties, ir atkarÄ«gs no jums
Ir vÄl viens moments - tas nepavisam nav fakts, ka desmitiem pÄrbaudÄ«tÄju steigsies piedalÄ«ties spÄlÄ pÄc jÅ«su zvana, un no tiem, kas nolemj izmÄÄ£inÄt, ne visi pat instalÄs un palaidÄ«s mezglu - parasti, Å”ajÄ posmÄ projektiem ir diezgan maza dokumentÄcija, tiek konstatÄtas kļūdas, un izstrÄdÄtÄji, kas strÄdÄ zem laika spiediena, ne pÄrÄk Ätri atbild uz jautÄjumiem. TÄpÄc pirms spÄles palaiÅ”anas ir jÄparedz arÄ« darbÄ«bas, ja netiek sasniegts nepiecieÅ”amais validatoru skaits. Å ajÄ gadÄ«jumÄ spÄles sÄkumÄ trÅ«kstoÅ”os validatorus palaiž projekta komanda, tie piedalÄs vienprÄtÄ«bÄ, bet nevar bÅ«t uzvarÄtÄji.
SecinÄjums
NoslÄgumÄ es mÄÄ£inÄju no iepriekÅ” minÄtÄ sastÄdÄ«t sarakstu ar to, kas ir jÄizdomÄ, jÄizveido un jÄuzsÄk, lai efektÄ«vi vadÄ«tu validatora spÄli.
Kas jums jÄdara, lai palaistu Ä«stu validatora spÄli:
izstrÄdÄ pats savu blokÄ·Ädi :)
- izveidot un izveidot tÄ«mekļa saskarni un nodroÅ”inÄt CLI balsoÅ”anai par pÄrbaudÄ«tÄjiem
- pÄrliecinieties, vai metriku no strÄdÄjoÅ”a validatora mezgla var nosÅ«tÄ«t uz centralizÄtu pakalpojumu (piemÄram, Prometheus)
- izveidot metrikas savÄkÅ”anas serveri (Prometheus + Grafana) validatora spÄlei
- izdomÄjiet, kÄ tiks aprÄÄ·inÄti apstiprinÄtÄja punkti (VP).
- izstrÄdÄt publisku skriptu, kas aprÄÄ·ina validatora VP, pamatojoties uz datiem no blokÄ·Ädes
- izstrÄdÄt tÄ«mekļa saskarni, lai parÄdÄ«tu labÄkos pÄrbaudÄ«tÄjus un pÄrbaudÄ«tÄju spÄles statusu (cik daudz laika atlicis lÄ«dz beigÄm, kam ir cik VP utt.)
- izstrÄdÄt un automatizÄt patvaļīga skaita savu mezglu palaiÅ”anu, izstrÄdÄt validatoru pievienoÅ”anas procesu spÄlei (kad un kÄ atvienot savus mezglus, iesniegt un noÅemt balsis par tiem)
- aprÄÄ·iniet, cik žetonus nepiecieÅ”ams izsniegt, un izstrÄdÄjiet jaucÄjkrÄna lÄ«gumu
- izveidot etalona skriptu (žetonu pÄrsÅ«tÄ«Å”ana, masveida krÄtuves izmantoÅ”ana, masveida tÄ«kla izmantoÅ”ana)
- pulcÄjiet visus dalÄ«bniekus vienÄ tÄrzÄÅ”anÄ Ätrai saziÅai
- palaidiet blokÄ·Ädi nedaudz agrÄk par spÄles sÄkumu
- gaidiet sÄkuma bloku, sÄciet spÄli
- pÄrbaudiet tÄ«klu ar vairÄkiem darÄ«jumu veidiem
- izrullÄjiet cieto dakÅ”iÅu
- mainīt validatoru sarakstu
- atkÄrtojiet 13,14,15., XNUMX., XNUMX. darbÄ«bu dažÄdÄs secÄ«bÄs, saglabÄjot tÄ«kla stabilitÄti
- gaidi pÄdÄjo bloku, beidz spÄli, saskaiti VP
JÄsaka, ka validatoru spÄle ir jauns stÄsts, un tas tika realizÄts tikai pÄris reizes, tÄpÄc nevajag Å”o tekstu uztvert kÄ gatavu ceļvedi. MÅ«sdienu IT biznesÄ nav analogu ā iedomÄjieties, ka bankas pirms maksÄjumu sistÄmas palaiÅ”anas sacenÅ”as savÄ starpÄ, kurÅ” vislabÄk veiks klientu darÄ«jumus. TradicionÄlÄs pieejas, visticamÄk, nepalÄ«dzÄs izveidot lielus decentralizÄtus tÄ«klus, tÄpÄc apgÅ«stiet jaunus biznesa modeļus, palaidiet spÄles, nosakiet cienÄ«gos, atalgojiet tos un nodroÅ”iniet savu izplatÄ«to sistÄmu Ätru un stabilu darbÄ«bu.
Avots: www.habr.com