
Namhlanje, izisombululo zokuvavanya kunye ne-benchmarking blockchains zilungelelaniswe kwi-blockchain ethile okanye iifolokhwe zayo. Kodwa kukho nezinye izisombululo ezininzi eziqhelekileyo ezahlukeneyo ekusebenzeni: ezinye zazo ziiprojekthi zemithombo evulekileyo, ezinye zibonelelwa njenge-SaaS, kodwa ezininzi zizisombululo zangaphakathi ezenziwe liqela lophuhliso lwe-blockchain. Nangona kunjalo, zonke zixazulula iingxaki ezifanayo. Kweli nqaku, ndizamile ukuphonononga ngokufutshane iimveliso ezininzi ezenzelwe ngokukodwa ukuvavanya i-blockchains.
Ukusebenza kwenethiwekhi ye-blockchain kufana nokusebenza kwedatha esasazwayo, ngoko ke izixhobo ezifanayo kunye neendlela zingasetyenziselwa ukuvavanya. Ukuqonda ngcono ukuba i-database esasazwayo ivavanywa njani, jonga ukhetho oluhle lwezixhobo kunye namanqaku . Umzekelo, i-latency ihlelwe ibe ziziqwenga kule nto , kunye nokuqonda indlela abajonga ngayo iibugs kwii-algorithms zokuphindaphinda, ndincoma ukufunda oku .
Ndiza kuchaza izisombululo ezininzi ezidumileyo zokuvavanya kunye ne-benchmarking blockchains. Ndingavuya ukuba kwiinkcazo uchaza ezinye iimveliso zesoftware eziluncedo ekusombululeni iingxaki ezifanayo.

Ndiza kuqala ngesixhobo, nangona singadalwanga ngokukodwa kwi-blockchains, ikuvumela ukuba uvavanye ngokufanelekileyo ukusebenza kwabo, ngaphandle kokuba kukho inethiwekhi esele isebenza apho unokuzama khona. Eyona nto ibalulekileyo ekuthembekeni kwenkqubo esasazwayo kukukwazi ukuqhubeka nokusebenza kwimeko yeengxaki kunye neeseva kunye nenethiwekhi. Oku kunokuba yi-network lags, ukugcwala kwedisk, ukungafumaneki kweenkonzo zangaphandle (DNS), ukusilela kwehardware kunye namakhulu ezinye izizathu. Ukujonga uzinzo lwazo naziphi na iinkqubo ezisebenza kwikonsathi kwinani elikhulu loomatshini beenkqubo, ungasebenzisa . Isebenzisa indlela esebenza kakhulu ebizwa ngokuba yiChaos Engineering.
Isebenzisa i-arhente yayo yenethiwekhi, iGremlin idala iingxaki ezininzi ezahlukeneyo kwinani elifunekayo loomatshini: i-network lags, i-overload yaso nasiphi na isixhobo (i-CPU, idiski, imemori, inethiwekhi), ikhubaza iiprothokholi zomntu ngamnye, njl. Kwi-blockchains, i-Gremlin inokusetyenziswa kwiiseva ze-testnet, ukulinganisa iingxaki zobomi bokwenyani kunye nokujonga ukuziphatha kwenethiwekhi. Ngayo, abaphuhlisi kunye nabalawuli banokujonga kwindawo elawulwayo ukuba kuya kwenzeka ntoni xa inkqubo iphahlazeka okanye xa ikhowudi ihlaziywa. Kule meko, inethiwekhi kufuneka iqwalaselwe kwaye isetyenziswe kwangaphambili, kunye nokucwangciswa kokuqokelela imilinganiselo efunekayo.
I-Gremlin sisixhobo esifanelekileyo sabakhi bezakhiwo, i-devops kunye neengcali zokhuseleko kunye nesisombululo sehlabathi lonke sokuvavanya naziphi na iinkqubo ezisele zenziwe kwaye zisebenza ngokusasazwayo, kuquka i-blockchains.

I-Hyperledger Caliper sisisombululo esikhethekileyo ngakumbi . Okwangoku, i-Caliper isekela iibhloko ezininzi ngaxeshanye - abameli bentsapho ye-Hyperledger (iFabric, i-Sawtooth, i-Iroha, i-Burrow, i-Besu), kunye ne-Ethereum kunye nenethiwekhi ye-FISCO BCOS.
Ukusebenzisa i-Caliper, unokuseta i-topology ye-blockchain network kunye nezivumelwano zokuvavanya, kunye nokuchaza ukucwangciswa kwe-node. Iinodi zeBlockchain ziphakanyiswe kwizikhongozeli zedokhi kumatshini omnye. Emva koko, unokukhetha okufunekayo kwaye ufumane ifayile enengxelo ngeziphumo zovavanyo emva kokuqaliswa. Uluhlu olupheleleyo lweemetriki zeCaliper kunye nendlela yokulinganisa inokufumaneka apha , eli linqaku elihle ukuba unomdla kwisihloko se-blockchain benchmarking. Unokuseta ingqokelela yeemetrics kwiPrometheus/Grafana eyahlukileyo.
I-Hyperledger Caliper sisixhobo esijolise kubaphuhlisi kunye nabakhi benkqubo, njengoko ibonelela ngokuphindaphindiweyo kovavanyo kunye nokuzenzekelayo kokuvavanya kunye nokulinganisa. Isetyenziswe ekuphuhliseni undoqo we-blockchains: i-algorithms yokuvumelana, umatshini obonakalayo wokucubungula izivumelwano ezihlakaniphile, i-peer-to-peer layer kunye nezinye iindlela zenkqubo.

sisixhobo esavela kwinkqubo yokuphuhlisa i-algorithms yokuvumelana kunye nokugqibela kwi-EOS-based networks kunye nokuvavanya i-parachains esekelwe kwi-Parity Substrate (Polkadot). Ngokumalunga nokusebenza, kusondele kwi-Hyperledger Caliper, njengoko kukuvumela ukuba uqokelele iimethrikhi ezibalulekileyo kwiinqununu zeyiphi na inkqubo esasazwayo kunye noomatshini bomthengi apho izikripthi zokuvavanya zisebenza khona.
I-MixBytes Tank isebenzisa iinkonzo ezininzi zamafu (i-Digital Ocean, i-Google Cloud Engine, njl.njl.), apho inokuqalisa iindawo ezininzi, iqhube iinkqubo zoqwalaselo lokuqala, iqhube iibenchmarks ezininzi ngokunxuseneyo koomatshini abahlukeneyo, iqokelele iimethrikhi eziyimfuneko kwaye ivale ngokuzenzekelayo i-metrics. inethiwekhi.
I-MixBytes Tank ikuvumela ukuba ugcine imali kwiiseva zefu ngokunciphisa ngokuzenzekelayo izixhobo ezingeyomfuneko emva kovavanyo. Enye into eyahlukileyo kukusetyenziswa kwephakheji ye-Molecule, evumela ukuba umphuhlisi avavanye ukuthunyelwa kwe-blockchain efunwayo kwindawo.
I-MixBytes Tank ikuvumela ukuba ubone kwangethuba iibhotile kunye neempazamo kwii-algorithms ezivela kuthungelwano lokwenyani kunye nenani elikhulu leeseva ezisasazwe ngokwejografi kunye nabathengi. Itanki iya kukunceda uqonde oko kuya kwenzeka kwii-nodes ukuba abathengi bathumela ukuthengiselana kunye neetps ezinikeziweyo kwiimeko eziphindaphindiweyo kunye nenani langempela leengqungquthela ezisasazeka kumazwekazi ahlukeneyo, ukuba kuyimfuneko.

I-Whiteblock Genesis yindawo yokuvavanya i-Ethereum-based blockchains. Esi sixhobo sinomsebenzi obanzi kakhulu: sikuvumela ukuba uqalise inethiwekhi, wenze inani elifunekayo le-akhawunti kuyo, uphakamise inani elifunekayo labathengi, uqwalasele i-topology yenethiwekhi, ucacise i-bandwidth kunye ne-packetloss parameters kwaye uqhube uvavanyo.
I-Whiteblock Genesis ibonelela ngezixhobo zayo zokuvavanya. Abaphuhlisi bafuna nje ukukhankanya iiparamitha zovavanyo, baqhube ngokusebenzisa i-API esele ilungile, kwaye bafumane iziphumo usebenzisa ideshibhodi efanelekileyo.
I-Whiteblock Genesis ikuvumela ukuba uqwalasele uvavanyo olucacileyo oluchanekileyo ukuba iqonga liya kuqhuba ngokuzenzekelayo kulo lonke utshintsho olubalulekileyo lwekhowudi. Oku kuya kukuvumela ukuba ubambe iimpazamo kwisigaba sokuqala kwaye uvavanye ngokukhawuleza impembelelo yotshintsho kwiiparamitha ezibalulekileyo zenethiwekhi, ezifana nesantya sokuthengiselana kunye nezixhobo ezidliwe ngama-nodes.
Madt
Enye imveliso enomdla eselula yokuvavanya iinkqubo ezisasazwayo . Ibhalwe kwiPython kwaye ikuvumela ukuba wenze i-topology yenethiwekhi efunekayo kunye nenani elifunekayo labancedisi kunye nabaxhasi usebenzisa iscript esilula soqwalaselo (). Emva koku, inkonzo ithumela inethiwekhi kwizikhongozeli ezininzi zeDocker kwaye ivula ujongano lwewebhu apho unokujonga khona imiyalezo evela kwiiseva kunye nabaxhasi benethiwekhi. I-Madt ingasetyenziselwa ukuvavanya i-blockchains - indawo yokugcina iprojekthi inovavanyo lwenethiwekhi ye-p2p esekelwe kwi-protocol ye-Kademlia, apho ukulibaziseka ekuhanjisweni kwedatha kwii-nodes kwanda ngokuthe ngcembe kwaye imeko yale datha ihlolwe.
I-Madt isandula ukuvela, kodwa inikwe uyilo lwayo olubhetyebhetye, inokukhula ibe yimveliso esebenzayo.
Ezinye izisombululo
Phantse naluphi na uvavanyo lwenkqubo inxalenye ye-blockchains ifuna ukuqhuba izikripthi zokuqala, ukulungiselela ii-akhawunti kunye neemeko zovavanyo (oku kunokuvavanya iimpazamo zemvumelwano ezinokuvelisa iifolokhwe ezininzi zamatyathanga, ukuvavanya iimeko zefolokhwe enzima, ukutshintsha iiparameters zenkqubo, njl.). Zonke ezi nkohliso zenziwa ngokwahlukileyo kwiibhloko ezahlukeneyo, ngoko ke kulula ukuba amaqela alungelelanise ngokuthe ngcembe uvavanyo lwemveliso kunye nokulinganisa kwi-CI / CD yangaphakathi kwaye basebenzise uphuhliso lwabo, oluthi ngokuthe ngcembe lube nzima ngakumbi njengoko umsebenzi webhloko ukhula.
Nangona kunjalo, ukusetyenziswa kwezisombululo esele zilungisiwe kunokunciphisa kakhulu ixesha lokuvavanya kula maqela, ngoko ke ndicinga ukuba le software iya kuphuhliswa ngokusebenzayo kwiminyaka ezayo.
isiphelo
Ukuqukumbela olu phononongo lufutshane, ndiza kudwelisa iimpawu ezininzi ezibalulekileyo zezixhobo zovavanyo lwe-blockchain:
- Ukukwazi ukuhambisa ngokuzenzekelayo inethiwekhi ye-blockchain phantsi kweemeko eziphindaphindiweyo. Le nto ibalulekile xa kuphuhliswa iinxalenye zenkqubo ye-blockchains: i-algorithms yokuvumelana, ukugqiba, izivumelwano ze-smart system.
- Iindleko zokuba ngumnini wenkqubo, izibonelelo ezisetyenzisiweyo kunye nokulula ukusetyenziswa rhoqo. Lo mba ubonelela iprojekthi ngovavanyo olukumgangatho ophezulu wemali encinci.
- Ukuguquguquka kunye nokulula koqwalaselo lovavanyo. Lo mba wandisa amathuba okuchonga iingxaki zesistim - kukho amathuba amancinci okulahleka into ebalulekileyo.
- Ukwenza ngokwezifiso iintlobo ezithile ze-blockchains. Ukuphuhlisa isisombululo esisekelwe kwinto ekhoyo kunokuphucula kakhulu umgangatho kunye nokunciphisa iindleko zexesha.
- Ukulungeleka kunye nokufikeleleka kweziphumo ezifunyenweyo kunye nohlobo lwazo (iingxelo, iimethrikhi, iigrafu, iilogi, njl.). Oku kuyimfuneko kakhulu ukuba ufuna ukulandelela imbali yophuhliso lwemveliso, okanye ukuba ufuna uhlalutyo olunzulu lokuziphatha kwenethiwekhi ye-blockchain.
Ithamsanqa ngovavanyo lwakho kwaye ngama blockchains akho angakhawuleza kwaye anyamezele iimpazamo!
umthombo: www.habr.com
