
Loni, awọn ojutu fun idanwo ati benchmarking blockchain jẹ ti a ṣe deede si blockchain kan pato tabi orita rẹ. Ṣugbọn ọpọlọpọ awọn solusan gbogbogbo tun wa ti o yatọ ni iṣẹ ṣiṣe: diẹ ninu wọn jẹ awọn iṣẹ orisun ṣiṣi, awọn miiran ni a pese bi SaaS, ṣugbọn pupọ julọ jẹ awọn solusan inu ti o ṣẹda nipasẹ ẹgbẹ idagbasoke blockchain. Sibẹsibẹ, gbogbo wọn yanju awọn iṣoro kanna. Ninu àpilẹkọ yii, Mo gbiyanju lati ṣe ayẹwo ni ṣoki awọn ọja pupọ ti a ṣe apẹrẹ pataki fun idanwo awọn blockchains.
Iṣiṣẹ ti nẹtiwọọki blockchain dabi iṣiṣẹ ti ibi ipamọ data ti a pin, nitorinaa awọn irinṣẹ ati awọn ọna ti o jọra le ṣee lo fun idanwo. Lati ni oye daradara bi a ti ṣe idanwo awọn apoti isura infomesonu pinpin, wo yiyan ti o dara ti awọn orisun ati awọn nkan . Fun apẹẹrẹ, lairi jẹ lẹsẹsẹ si awọn ege ni eyi , ati lati ni oye bi wọn ṣe n wa awọn aṣiṣe ni awọn algorithms atunkọ, Mo ṣeduro kika eyi .
Emi yoo ṣe apejuwe ọpọlọpọ awọn solusan olokiki fun idanwo ati benchmarking blockchains. Inu mi yoo dun ti o ba jẹ pe ninu awọn asọye o ṣe apejuwe awọn ọja sọfitiwia miiran ti o wulo fun ipinnu awọn iṣoro kanna.

Emi yoo bẹrẹ pẹlu ọpa kan ti, botilẹjẹpe ko ṣẹda ni pataki fun awọn blockchains, ngbanilaaye lati ṣe idanwo iṣẹ wọn ni imunadoko, ti o ba jẹ pe nẹtiwọọki ti n ṣiṣẹ tẹlẹ wa lori eyiti o le ṣe idanwo. Ohun pataki julọ ni igbẹkẹle ti eto pinpin ni agbara lati tẹsiwaju ṣiṣẹ ni iṣẹlẹ ti awọn iṣoro pẹlu awọn olupin ati nẹtiwọọki. Eyi le jẹ lags nẹtiwọọki, kikun disiki, aisi awọn iṣẹ ita (DNS), awọn ikuna ohun elo ati awọn ọgọọgọrun awọn idi miiran. Lati ṣayẹwo iduroṣinṣin ti eyikeyi awọn ọna ṣiṣe ti n ṣiṣẹ ni ere lori nọmba nla ti awọn ẹrọ eto, o le lo . O nlo ọna ti o munadoko pupọ ti a pe ni Chaos Engineering.
Lilo aṣoju nẹtiwọọki tirẹ, Gremlin ṣẹda ọpọlọpọ awọn oriṣiriṣi awọn iṣoro lori nọmba awọn ẹrọ ti o nilo: awọn ẹrọ nẹtiwọọki, apọju ti eyikeyi awọn orisun (Sipiyu, disk, iranti, nẹtiwọọki), mu awọn ilana kọọkan ṣiṣẹ, ati bẹbẹ lọ. Fun blockchains, Gremlin le ṣee lo lori awọn olupin testnet, ti n ṣe apẹẹrẹ awọn iṣoro gidi-aye ati akiyesi ihuwasi ti nẹtiwọọki. Pẹlu rẹ, awọn olupilẹṣẹ ati awọn alakoso le ṣe akiyesi ni agbegbe iṣakoso ohun ti yoo ṣẹlẹ ti eto naa ba kọlu tabi nigbati koodu ti ni imudojuiwọn. Ni ọran yii, nẹtiwọọki naa gbọdọ tunto ati gbe lọ siwaju, bakanna bi tunto lati gba awọn metiriki pataki.
Gremlin jẹ ohun elo irọrun fun awọn ayaworan ile, awọn oluyaworan ati awọn alamọja aabo ati ojutu gbogbo agbaye fun idanwo eyikeyi ti a ti ṣetan ati ṣiṣiṣẹ awọn eto pinpin, pẹlu blockchains.

Hyperledger Caliper jẹ ojutu amọja pupọ diẹ sii . Ni akoko yii, Caliper ṣe atilẹyin ọpọlọpọ awọn blockchains ni ẹẹkan - awọn aṣoju ti idile Hyperledger (Fabric, Sawtooth, Iroha, Burrow, Besu), bakanna bi Ethereum ati nẹtiwọki FISCO BCOS.
Lilo Caliper, o le ṣeto topology ti nẹtiwọọki blockchain ati awọn adehun fun idanwo, bakannaa ṣe apejuwe iṣeto ti ipade naa. Awọn apa blockchain ni a gbe soke ni awọn apoti docker lori ẹrọ kan. Nigbamii ti, o le yan awọn pataki ati gba faili kan pẹlu ijabọ lori awọn abajade idanwo lẹhin ifilọlẹ. Atokọ kikun ti awọn metiriki Caliper ati ọna isamisi le ṣee rii Nibi , Eyi jẹ nkan nla ti o ba nifẹ si koko-ọrọ blockchain benchmarking. O tun le ṣeto ikojọpọ awọn metiriki ni lọtọ Prometheus/Grafana.
Hyperledger Caliper jẹ ohun elo ti o ni ifọkansi si awọn olupilẹṣẹ ati awọn ayaworan eto, bi o ti n pese atunwi idanwo ati adaṣe ti idanwo ati aṣepari. O ti wa ni lilo ninu idagbasoke ti awọn mojuto ti blockchains: ipohunpo aligoridimu, a foju ẹrọ fun processing smati siwe, a ẹlẹgbẹ-si-ẹlẹgbẹ Layer ati awọn miiran eto ise sise.

jẹ ọpa ti o farahan ni ilana ti idagbasoke ifọkanbalẹ ati awọn algorithms ipari fun awọn nẹtiwọki ti o da lori EOS ati awọn parachains idanwo ti o da lori Parity Substrate (Polkadot). Ni awọn ofin ti iṣẹ ṣiṣe, o wa nitosi Hyperledger Caliper, bi o ṣe gba ọ laaye lati gba awọn metiriki pataki lati awọn apa ti eyikeyi eto pinpin ati awọn ẹrọ alabara lori eyiti awọn iwe afọwọkọ idanwo nṣiṣẹ.
MixBytes Tank nlo ọpọlọpọ awọn iṣẹ awọsanma (Digital Ocean, Google Cloud Engine, bbl), ninu eyiti o le ṣe ifilọlẹ ọpọlọpọ awọn apa, ṣe awọn ilana iṣeto alakoko, ṣiṣe ọpọlọpọ awọn aṣepari ni afiwe lori awọn ẹrọ oriṣiriṣi, gba awọn metiriki to wulo ati tiipa laifọwọyi nẹtiwọki.
MixBytes Tank gba ọ laaye lati ṣafipamọ owo lori awọn olupin awọsanma nipa didinku awọn orisun ti ko wulo laifọwọyi lẹhin idanwo kan. Ẹya iyasọtọ miiran ni lilo package Molecule, eyiti o fun laaye idagbasoke lati ṣe idanwo imuṣiṣẹ ti blockchain ti o fẹ ni agbegbe.
MixBytes Tank ngbanilaaye lati tete ṣawari awọn igo ati awọn aṣiṣe ni awọn algoridimu ti o dide ni awọn nẹtiwọọki gidi pẹlu nọmba nla ti awọn olupin kaakiri agbegbe ati awọn alabara. Ojò naa yoo ṣe iranlọwọ fun ọ lati ni oye ohun ti yoo ṣẹlẹ lori awọn apa ti awọn alabara ba firanṣẹ awọn iṣowo pẹlu tps ti a fun ni awọn ipo atunwi giga ati pẹlu nọmba gidi ti awọn apa ti o tan kaakiri awọn kọnputa oriṣiriṣi, ti o ba jẹ dandan.

Whiteblock Genesisi jẹ ipilẹ idanwo fun awọn blockchains ti o da lori Ethereum. Ọpa yii ni iṣẹ ṣiṣe lọpọlọpọ: o fun ọ laaye lati ṣe ifilọlẹ nẹtiwọọki kan, ṣẹda nọmba ti awọn akọọlẹ ti o nilo ninu rẹ, gbe nọmba ti o nilo ti awọn alabara, tunto topology nẹtiwọọki, pato bandiwidi ati awọn aye packetloss ati ṣiṣe idanwo kan.
Whiteblock Genesisi pese awọn ohun elo idanwo tirẹ. Awọn olupilẹṣẹ kan nilo lati pato awọn aye idanwo, ṣiṣe wọn ni lilo API ti a ti ṣetan, ati gba awọn abajade ni lilo dasibodu irọrun.
Jẹnẹsisi Whiteblock gba ọ laaye lati tunto idanwo alaye ti iṣẹtọ ti pẹpẹ yoo ṣe adaṣe laifọwọyi fun gbogbo iyipada koodu pataki. Eyi yoo gba ọ laaye lati yẹ awọn aṣiṣe ni ipele ibẹrẹ ati lẹsẹkẹsẹ ṣe ayẹwo ipa ti awọn ayipada lori awọn aye nẹtiwọọki pataki, gẹgẹbi iyara idunadura ati awọn orisun ti o jẹ nipasẹ awọn apa.
Madt
Ọja ọdọ miiran ti o nifẹ fun idanwo awọn eto pinpin jẹ . O ti kọ ni Python ati pe o fun ọ laaye lati ṣẹda topology nẹtiwọọki ti o nilo ati nọmba ti a beere fun awọn olupin ati awọn alabara ni lilo iwe afọwọkọ iṣeto ti o rọrun (). Lẹhin eyi, iṣẹ naa nfi nẹtiwọọki ṣiṣẹ ni ọpọlọpọ awọn apoti Docker ati ṣii wiwo wẹẹbu kan ninu eyiti o le ṣe akiyesi awọn ifiranṣẹ lati ọdọ awọn olupin ati awọn alabara ti nẹtiwọọki. Madt le ṣee lo fun idanwo awọn blockchains - ibi ipamọ iṣẹ akanṣe ni idanwo nẹtiwọọki p2p ti o da lori ilana Kademlia, ninu eyiti awọn idaduro ni jiṣẹ data si awọn apa ti pọ si ni diėdiė ati pe ipo data yii ti ṣayẹwo.
Madt ti han laipẹ, ṣugbọn fun faaji ti o rọ pupọ, o le dagbasoke sinu ọja iṣẹ-ṣiṣe.
Awọn ojutu miiran
Fere eyikeyi idanwo ti apakan eto ti blockchains nilo ṣiṣe awọn iwe afọwọkọ alakoko, ngbaradi awọn akọọlẹ ati awọn ipo fun idanwo naa (eyi le jẹ idanwo awọn aṣiṣe ipohunpo ti o le ṣe agbejade ọpọlọpọ awọn orita ti awọn ẹwọn, idanwo awọn oju iṣẹlẹ orita lile, awọn aye eto iyipada, ati bẹbẹ lọ). Gbogbo awọn ifọwọyi wọnyi ni a ṣe ni oriṣiriṣi ni oriṣiriṣi awọn blockchain, nitorinaa o rọrun fun awọn ẹgbẹ lati ṣe adaṣe idanwo ọja ni diėdiė ati aṣepari si CI/CD inu ati lo awọn idagbasoke tiwọn, eyiti o di idiju diẹ sii bi iṣẹ ṣiṣe ti blockchain ṣe ndagba.
Bibẹẹkọ, lilo awọn solusan ti a ti ṣetan le dinku akoko idanwo pupọ fun awọn ẹgbẹ wọnyi, nitorinaa Mo ro pe sọfitiwia yii yoo ni idagbasoke ni agbara ni awọn ọdun to n bọ.
ipari
Lati pari atunyẹwo kukuru yii, Emi yoo ṣe atokọ ọpọlọpọ awọn abuda pataki ti awọn irinṣẹ idanwo blockchain:
- Agbara lati mu nẹtiwọọki blockchain ṣiṣẹ laifọwọyi labẹ awọn ipo atunwi. Ifosiwewe yii ṣe pataki nigba idagbasoke awọn ẹya eto ti awọn blockchains: awọn algorithms ifọkanbalẹ, ipari, awọn adehun smati eto.
- Iye idiyele ti nini eto, awọn orisun ti o jẹ ati irọrun fun lilo igbagbogbo. Ifosiwewe yii n pese iṣẹ akanṣe pẹlu awọn idanwo didara-giga fun owo kekere.
- Ni irọrun ati ayedero ti iṣeto ni igbeyewo. Yi ifosiwewe mu ki awọn Iseese ti idamo eto isoro - nibẹ ni kere anfani ti sonu nkankan pataki.
- Isọdi fun awọn oriṣi pato ti blockchains. Ṣiṣe idagbasoke ojutu kan ti o da lori ọkan ti o wa tẹlẹ le mu didara dara pupọ ati dinku awọn idiyele akoko.
- Irọrun ati iraye si ti awọn abajade ti o gba ati iru wọn (awọn ijabọ, awọn metiriki, awọn aworan, awọn akọọlẹ, ati bẹbẹ lọ). Eyi jẹ dandan patapata ti o ba fẹ tọpa itan-akọọlẹ idagbasoke ọja kan, tabi ti o ba nilo awọn itupalẹ jinlẹ ti ihuwasi ti nẹtiwọọki blockchain.
Orire ti o dara pẹlu idanwo rẹ ati pe o le jẹ ki awọn blockchains rẹ yara ati ifarada-aṣiṣe!
orisun: www.habr.com
