Usa ka Mubo nga Overview sa Blockchain Testing ug Benchmarking Tools

Usa ka Mubo nga Overview sa Blockchain Testing ug Benchmarking Tools

Karon, ang mga solusyon alang sa pagsulay ug pag-benchmark nga mga blockchain gipahaum sa usa ka piho nga blockchain o mga tinidor niini. Apan adunay daghan usab nga mga kinatibuk-ang solusyon nga magkalainlain sa pag-andar: ang uban niini mga bukas nga gigikanan nga mga proyekto, ang uban gihatag ingon SaaS, apan kadaghanan mga internal nga solusyon nga gihimo sa blockchain development team. Bisan pa, silang tanan nagsulbad sa parehas nga mga problema. Niini nga artikulo, gisulayan nako ang pagrepaso sa kadali sa daghang mga produkto nga gidisenyo alang sa pagsulay sa mga blockchain.

Ang operasyon sa usa ka blockchain network susama sa operasyon sa usa ka gipang-apod-apod nga database, mao nga ang susama nga mga himan ug pamaagi mahimong magamit alang sa pagsulay. Aron mas masabtan kung giunsa gisulayan ang mga gipang-apod-apod nga mga database, tan-awa ang maayong pagpili sa mga kapanguhaan ug mga artikulo gikan dinhi. Pananglitan, ang latency gibahin sa mga piraso niini artikulo, ug aron masabtan kung giunsa nila pagpangita ang mga bug sa mga algorithm sa pagkopya, girekomenda nako nga basahon kini artikulo.

Ihulagway nako ang daghang mga sikat nga solusyon alang sa pagsulay ug pag-benchmark sa mga blockchain. Malipay ako kung sa mga komentaryo imong ihulagway ang ubang mapuslanon nga mga produkto sa software alang sa pagsulbad sa parehas nga mga problema.

Usa ka Mubo nga Overview sa Blockchain Testing ug Benchmarking Tools

Magsugod ako sa usa ka himan nga, bisan kung wala gihimo nga espesipiko alang sa mga blockchain, nagtugot kanimo nga epektibo nga sulayan ang ilang operasyon kung adunay usa ka nagdagan nga network diin mahimo ka mag-eksperimento. Ang labing hinungdanon nga hinungdan sa pagkakasaligan sa usa ka giapod-apod nga sistema mao ang abilidad nga magpadayon sa pagtrabaho kung adunay mga problema sa mga server ug network. Kini mahimo nga network lags, disk fullness, unavailability sa external services (DNS), hardware failures ug gatusan ka uban pang mga rason. Aron masusi ang kalig-on sa bisan unsang mga sistema nga naglihok sa konsyerto sa daghang mga sistema sa makina, mahimo nimong gamiton Gremlin. Naggamit kini usa ka labi ka epektibo nga pamaagi nga gitawag nga Chaos Engineering.

Gamit ang kaugalingon nga ahente sa network, ang Gremlin nagmugna daghang lainlaing mga lahi sa mga problema sa gikinahanglan nga gidaghanon sa mga makina: mga lags sa network, sobra nga pagkarga sa bisan unsang kapanguhaan (CPU, disk, memorya, network), gi-disable ang mga indibidwal nga protocol, ug uban pa. Alang sa mga blockchain, ang Gremlin mahimong magamit sa mga server sa testnet, pagsundog sa mga problema sa tinuod nga kinabuhi ug pag-obserbar sa pamatasan sa network. Uban niini, ang mga developer ug mga administrador maka-obserbar sa usa ka kontrolado nga palibot kung unsa ang mahitabo kung ang sistema mag-crash o kung ang code gi-update. Sa kini nga kaso, ang network kinahanglan nga i-configure ug i-deploy nga abante, ingon man i-configure aron makolekta ang kinahanglan nga mga sukatan.

Ang Gremlin usa ka kombenyente nga himan alang sa mga arkitekto, devops ug mga espesyalista sa seguridad ug usa ka unibersal nga solusyon alang sa pagsulay sa bisan unsang andam na ug nagpadagan nga gipang-apod-apod nga mga sistema, lakip ang mga blockchain.

Usa ka Mubo nga Overview sa Blockchain Testing ug Benchmarking Tools

Ang Hyperledger Caliper usa ka labi ka espesyal nga solusyon Hyperledger Caliper. Sa pagkakaron, gisuportahan sa Caliper ang daghang mga blockchain sa usa ka higayon - mga representante sa pamilyang Hyperledger (Fabric, Sawtooth, Iroha, Burrow, Besu), ingon man ang Ethereum ug ang FISCO BCOS network.

Gamit ang Caliper, mahimo nimong itakda ang topology sa blockchain network ug mga kontrata alang sa pagsulay, ingon man ihulagway ang pagsumpo sa node. Ang mga blockchain node gipataas sa mga docker container sa usa ka makina. Sunod, mahimo nimong pilion ang gikinahanglan pagsulay nga mga pag-configure ug makadawat usa ka file nga adunay usa ka taho sa mga resulta sa pagsulay pagkahuman sa paglansad. Ang usa ka bug-os nga lista sa Caliper metrics ug benchmarking approach makita dinhi Hyperledger Blockchain Performance Metrics, kini usa ka maayo nga artikulo kung interesado ka sa hilisgutan sa blockchain benchmarking. Mahimo usab nimo nga i-set up ang pagkolekta sa sukatan sa usa ka bulag nga Prometheus/Grafana.

Ang Hyperledger Caliper usa ka himan nga gitumong sa mga nag-develop ug mga arkitekto sa sistema, tungod kay naghatag kini nga pag-usab sa pagsulay ug automation sa pagsulay ug pag-benchmark. Gigamit kini sa pagpalambo sa kinauyokan sa mga blockchain: consensus algorithm, usa ka virtual machine alang sa pagproseso sa mga smart contract, usa ka peer-to-peer layer ug uban pang mga mekanismo sa sistema.

Usa ka Mubo nga Overview sa Blockchain Testing ug Benchmarking Tools

MixBytes Tank usa ka himan nga mitumaw sa proseso sa pagpalambo sa consensus ug finality algorithms alang sa EOS-based networks ug testing parachains base sa Parity Substrate (Polkadot). Sa termino sa pag-andar, kini duol sa Hyperledger Caliper, tungod kay kini nagtugot kanimo sa pagkolekta sa importante nga mga sukatan gikan sa mga node sa bisan unsang gipang-apod-apod nga sistema ug mga makina sa kliyente diin ang mga script sa pagsulay nagdagan.

Ang MixBytes Tank naggamit sa daghang mga serbisyo sa panganod (Digital Ocean, Google Cloud Engine, ug uban pa), diin mahimo’g maglansad kini daghang mga node, maghimo pasiuna nga mga pamaagi sa pag-configure, magpadagan sa daghang mga benchmark nga managsama sa lainlaing mga makina, kolektahon ang kinahanglan nga mga sukatan ug awtomatiko nga isira ang network.

Gitugotan ka sa MixBytes Tank nga makatipig salapi sa mga cloud server pinaagi sa awtomatikong pagminus sa dili kinahanglan nga mga kapanguhaan pagkahuman sa usa ka pagsulay. Ang laing talagsaon nga bahin mao ang paggamit sa Molecule package, nga nagtugot sa developer sa pagsulay sa pagdeploy sa gusto nga blockchain sa lokal.

Gitugotan ka sa MixBytes Tank nga sayo nga makit-an ang mga bottleneck ug mga sayup sa mga algorithm nga mitumaw sa tinuud nga mga network nga adunay daghang mga server ug kliyente nga giapod-apod sa heyograpiya. Ang tangke makatabang kanimo nga masabtan kung unsa ang mahitabo sa mga node kung ang mga kliyente magpadala mga transaksyon sa usa ka gihatag nga tps sa labi ka mabalik nga mga kahimtang ug adunay tinuud nga gidaghanon sa mga node nga mikaylap sa lainlaing mga kontinente, kung kinahanglan.

Usa ka Mubo nga Overview sa Blockchain Testing ug Benchmarking Tools

Ang Whiteblock Genesis usa ka plataporma sa pagsulay alang sa mga blockchain nga nakabase sa Ethereum. Kini nga himan adunay usa ka halapad nga pag-andar: kini nagtugot kanimo sa paglansad sa usa ka network, paghimo sa gikinahanglan nga gidaghanon sa mga account niini, pagpataas sa gikinahanglan nga gidaghanon sa mga kliyente, pag-configure sa topology sa network, pagtino sa bandwidth ug packetloss nga mga parameter ug pagpadagan sa usa ka pagsulay.

Naghatag ang Whiteblock Genesis sa kaugalingon nga pasilidad sa pagsulay. Ang mga developers kinahanglan lang nga magtino sa mga parameter sa pagsulay, magpadagan niini gamit ang usa ka andam nga API, ug makakuha og mga resulta gamit ang usa ka sayon ​​​​nga dashboard.

Gitugotan ka sa Whiteblock Genesis nga i-configure ang usa ka medyo detalyado nga pagsulay nga awtomatiko nga himuon sa plataporma alang sa matag hinungdanon nga pagbag-o sa code. Kini magtugot kanimo sa pagdakop sa mga kasaypanan sa sayo nga yugto ug diha-diha dayon sa pagsusi sa epekto sa mga kausaban sa importante nga mga parameter sa network, sama sa katulin sa transaksyon ug mga kapanguhaan nga gigamit sa mga node.

Si Madt

Ang laing makapaikag nga batan-on nga produkto alang sa pagsulay nga gipang-apod-apod nga mga sistema mao ang madt. Gisulat kini sa Python ug nagtugot kanimo sa paghimo sa gikinahanglan nga topology sa network ug sa gikinahanglan nga gidaghanon sa mga server ug mga kliyente gamit ang usa ka yano nga script sa pag-configure (usa ka panig-ingnan). Pagkahuman niini, ang serbisyo nag-deploy sa network sa daghang mga sudlanan sa Docker ug nagbukas sa usa ka interface sa web diin mahimo nimong maobserbahan ang mga mensahe gikan sa mga server ug kliyente sa network. Madt mahimong gamiton alang sa pagsulay blockchains - ang proyekto repository adunay usa ka p2p network pagsulay base sa Kademlia protocol, diin ang mga paglangan sa paghatod sa data ngadto sa mga node anam-anam nga misaka ug ang kahimtang sa niini nga data gisusi.

Bag-o lang nagpakita ang Madt, apan tungod sa flexible kaayo nga arkitektura, mahimo kini nga usa ka functional nga produkto.

Ubang mga solusyon

Halos bisan unsang pagsulay sa sistema nga bahin sa mga blockchain nanginahanglan pagpadagan sa pasiuna nga mga script, pag-andam sa mga account ug mga kondisyon alang sa pagsulay (kini mahimo nga pagsulay sa mga sayup sa consensus nga makamugna og daghang mga tinidor sa mga kadena, pagsulay sa lisud nga mga senaryo sa tinidor, pagbag-o sa mga parameter sa sistema, ug uban pa). Ang tanan nga kini nga mga manipulasyon gihimo sa lahi nga paagi sa lainlaing mga blockchain, mao nga mas dali alang sa mga koponan nga anam-anam nga ipahiangay ang pagsulay sa produkto ug pag-benchmark sa internal nga CI / CD ug gamiton ang ilang kaugalingon nga mga pag-uswag, nga anam-anam nga nahimong labi ka komplikado samtang ang pag-andar sa blockchain nag-uswag.

Bisan pa, ang paggamit sa mga andam nga solusyon makapakunhod pag-ayo sa oras sa pagsulay alang sa kini nga mga koponan, mao nga sa akong hunahuna kini nga software aktibo nga mapalambo sa umaabot nga mga tuig.

konklusyon

Aron tapuson kini nga mubo nga pagrepaso, ilista nako ang daghang hinungdanon nga mga kinaiya sa mga himan sa pagsulay sa blockchain:

  • Ang abilidad sa awtomatik nga pag-deploy sa usa ka blockchain network ubos sa balik-balik nga mga kondisyon. Importante kini nga butang sa pagpalambo sa mga bahin sa sistema sa blockchains: consensus algorithms, finality, system smart contracts.
  • Ang gasto sa pagpanag-iya sa sistema, ang mga kahinguhaan nga gigamit ug ang kasayon ​​alang sa kanunay nga paggamit. Kini nga hinungdan naghatag sa proyekto og taas nga kalidad nga mga pagsulay alang sa gamay nga salapi.
  • Pagka-flexible ug kayano sa pagsumpo sa pagsulay. Kini nga butang nagdugang sa mga kahigayonan sa pag-ila sa mga problema sa sistema - adunay gamay nga kahigayonan nga mawad-an sa usa ka butang nga importante.
  • Pag-customize alang sa piho nga mga tipo sa blockchain. Ang pagpalambo sa usa ka solusyon nga gipasukad sa usa nga naglungtad mahimo’g mapauswag ang kalidad ug makunhuran ang gasto sa oras.
  • Kasayon ​​ug accessibility sa mga resulta nga nakuha ug sa ilang matang (reports, metrics, graphs, logs, etc.). Kini mao ang hingpit nga gikinahanglan kon kamo gusto sa pagsubay sa kasaysayan sa usa ka produkto sa kalamboan, o kon kamo nagkinahanglan og lawom nga analytics sa kinaiya sa blockchain network.

Maayong swerte sa imong pagsulay ug hinaut nga ang imong mga blockchain mahimong paspas ug matugoton sa sayup!

Source: www.habr.com

Idugang sa usa ka comment