Yon Brèf Apèsi sou Tès Blockchain ak Zouti Benchmarking

Yon Brèf Apèsi sou Tès Blockchain ak Zouti Benchmarking

Jodi a, solisyon pou tès ak benchmarking blockchain yo pwepare a yon blòk espesifik oswa fouchèt li yo. Men, gen tou plizyè solisyon plis jeneral ki diferan nan fonksyonalite: kèk nan yo se pwojè sous louvri, lòt moun yo bay kòm SaaS, men pifò se solisyon entèn ki te kreye pa ekip la devlopman blòk. Sepandan, yo tout rezoud pwoblèm menm jan an. Nan atik sa a, mwen te eseye yon ti tan revize plizyè pwodwi ki fèt espesyalman pou tès blockchains.

Operasyon an nan yon rezo blockchain sanble ak operasyon an nan yon baz done distribye, kidonk zouti ak metòd menm jan yo ka itilize pou fè tès. Pou pi byen konprann ki jan yo teste baz done distribiye, gade yon bon seleksyon resous ak atik kon sa. Pou egzanp, latansi yo klase an moso nan sa a Atik, ak konprann ki jan yo gade pou pinèz nan algoritm replikasyon, mwen rekòmande li sa a atik.

Mwen pral dekri plizyè solisyon popilè pou tès ak benchmarking blockchains. Mwen ta kontan si nan kòmantè yo ou dekri lòt pwodwi lojisyèl itil pou rezoud pwoblèm yo menm.

Yon Brèf Apèsi sou Tès Blockchain ak Zouti Benchmarking

Mwen pral kòmanse ak yon zouti ki, byenke pa kreye espesyalman pou blockchains, pèmèt ou efektivman teste operasyon yo, depi ke gen yon rezo ki deja kouri sou ki ou ka fè eksperyans. Faktè ki pi enpòtan nan fyab nan yon sistèm distribiye se kapasite nan kontinye travay nan evènman an nan pwoblèm ak serveurs yo ak rezo. Sa a ta ka lag rezo, plenite disk, indisponibilite sèvis ekstèn (DNS), echèk pyès ki nan konpitè ak dè santèn de lòt rezon. Pou tcheke estabilite nan nenpòt sistèm opere nan konsè sou yon gwo kantite sistèm machin, ou ka itilize Gremlin. Li itilize yon apwòch trè efikas ki rele Dezòd Jeni.

Lè l sèvi avèk pwòp ajan rezo li yo, Gremlin kreye anpil diferan kalite pwoblèm sou kantite machin ki nesesè yo: lag rezo, surcharge nan nenpòt resous (CPU, disk, memwa, rezo), enfim pwotokòl endividyèl, elatriye. Pou blockchains, Gremlin ka itilize sou sèvè testnet, imite pwoblèm nan lavi reyèl ak obsève konpòtman rezo a. Avèk li, devlopè ak administratè yo ka obsève nan yon anviwònman kontwole sa ki pral rive si sistèm nan aksidan oswa lè kòd la mete ajou. Nan ka sa a, rezo a dwe configuré ak deplwaye davans, osi byen ke configuré pou kolekte mezi ki nesesè yo.

Gremlin se yon zouti pratik pou achitèk, devops ak espesyalis sekirite ak yon solisyon inivèsèl pou teste nenpòt ki pare ak kouri sistèm distribiye, ki gen ladan blockchains.

Yon Brèf Apèsi sou Tès Blockchain ak Zouti Benchmarking

Hyperledger Caliper se yon solisyon pi plis espesyalize Hyperledger konpa. Nan moman sa a, Caliper sipòte plizyè blockchain nan yon fwa - reprezantan fanmi Hyperledger (Twal, Sawtooth, Iroha, Burrow, Besu), osi byen ke Ethereum ak rezo a FISCO BCOS.

Lè l sèvi avèk Caliper, ou ka mete topoloji rezo blockchain ak kontra pou fè tès, osi byen ke dekri konfigirasyon ne la. Nœuds Blockchain yo ogmante nan resipyan docker sou yon sèl machin. Apre sa, ou ka chwazi sa ki nesesè yo konfigirasyon tès yo epi resevwa yon dosye ak yon rapò sou rezilta tès yo apre lansman. Ou ka jwenn yon lis konplè sou mezi Caliper ak apwòch benchmarking isit la Hyperledger Blockchain Metric Pèfòmans, sa a se yon gwo atik si w enterese nan sijè a nan blockchain benchmarking. Ou kapab tou mete kanpe koleksyon mezi nan yon Prometheus/Grafana separe.

Hyperledger Caliper se yon zouti ki vize a devlopè ak achitèk sistèm, paske li bay repetibilite tès ak automatisation nan tès ak benchmarking. Li se itilize nan devlopman nan nwayo a nan blockchains: algoritm konsansis, yon machin vityèl pou trete kontra entelijan, yon kouch kanmarad-a-kanmarad ak lòt mekanis sistèm.

Yon Brèf Apèsi sou Tès Blockchain ak Zouti Benchmarking

MixBytes tank se yon zouti ki parèt nan pwosesis pou devlope konsansis ak algoritm finalite pou rezo ki baze sou EOS ak tès parachains ki baze sou Parity Substrate (Polkadot). An tèm de fonksyonalite, li se tou pre Hyperledger Caliper, paske li pèmèt ou kolekte mezi enpòtan nan nœuds nenpòt sistèm distribiye ak machin kliyan sou ki script tès yo ap kouri.

MixBytes Tank itilize plizyè sèvis nwaj (Digital Ocean, Google Cloud Engine, elatriye), kote li ka lanse anpil nœuds, fè pwosedi konfigirasyon preliminè, kouri plizyè referans an paralèl sou diferan machin, kolekte mezi ki nesesè yo ak otomatikman fèmen. rezo.

MixBytes Tank pèmèt ou ekonomize lajan sou serveurs nwaj yo pa otomatikman minimize resous ki pa nesesè apre yon tès. Yon lòt karakteristik diferan se itilizasyon pake Molekil la, ki pèmèt pwomotè a teste deplwaman blockchain vle lokalman.

MixBytes Tank pèmèt ou detekte byen bonè anbouteyaj ak erè nan algoritm ki parèt nan rezo reyèl ak yon gwo kantite sèvè ak kliyan distribye jeyografikman. Tank la pral ede w konprann sa ki pral rive sou nœuds yo si kliyan voye tranzaksyon ak yon tps yo bay nan kondisyon trè repete ak ak yon kantite reyèl nœuds gaye sou diferan kontinan, si sa nesesè.

Yon Brèf Apèsi sou Tès Blockchain ak Zouti Benchmarking

Whiteblock Genesis se yon platfòm tès pou blockchains ki baze sou Ethereum. Zouti sa a gen yon fonksyonalite byen laj: li pèmèt ou lanse yon rezo, kreye kantite kont ki nesesè nan li, ogmante kantite kliyan ki nesesè yo, konfigirasyon topoloji rezo a, presize paramèt Pleasant ak packetloss ak kouri yon tès.

Whiteblock Genesis bay pwòp enstalasyon tès li yo. Devlopè yo jis bezwen presize paramèt tès yo, kouri yo lè l sèvi avèk yon API pare, epi jwenn rezilta lè l sèvi avèk yon tablodbò pratik.

Whiteblock Genesis pèmèt ou konfigirasyon yon tès jistis detaye ke platfòm la pral otomatikman fè pou chak chanjman enpòtan nan kòd. Sa a pral pèmèt ou trape erè nan yon etap bonè epi imedyatman evalye enpak la nan chanjman sou paramèt rezo enpòtan, tankou vitès tranzaksyon ak resous konsome pa nœuds.

Madt

Yon lòt pwodwi enteresan jenn pou tès distribiye sistèm se madt. Li ekri nan Python epi li pèmèt ou kreye topoloji rezo ki nesesè yo ak kantite serveurs ak kliyan ki nesesè yo lè l sèvi avèk yon script konfigirasyon senp (egzanp). Apre sa, sèvis la deplwaye rezo a nan plizyè resipyan Docker epi ouvè yon koòdone entènèt kote ou ka obsève mesaj ki soti nan serveurs ak kliyan rezo a. Madt ka itilize pou teste blockchains - depo pwojè a gen yon tès rezo p2p ki baze sou pwotokòl Kademlia, kote reta nan livrezon done nan nœuds yo ap ogmante piti piti epi yo tcheke estati done sa yo.

Madt te sèlman dènyèman parèt, men bay achitekti trè fleksib li yo, li ka devlope nan yon pwodwi fonksyonèl.

Lòt solisyon

Prèske nenpòt tès nan pati nan sistèm nan blockchains mande pou kouri scripts preliminè, prepare kont ak kondisyon pou tès la (sa a ka teste erè konsansis ki ka jenere fouchèt anpil nan chenn, tès senaryo fouchèt difisil, chanje paramèt sistèm, elatriye). Tout manipilasyon sa yo fèt yon fason diferan nan blockchains diferan, kidonk li pi fasil pou ekip yo piti piti adapte tès pwodwi ak benchmarking nan CI/CD entèn yo epi sèvi ak devlopman pwòp yo, ki piti piti vin pi konplèks kòm fonksyonalite nan blockchain la devlope.

Men, itilizasyon solisyon pare yo ka redwi anpil tan tès pou ekip sa yo, kidonk mwen panse ke lojisyèl sa a pral aktivman devlope nan ane kap vini yo.

Konklizyon

Pou fini revizyon kout sa a, mwen pral lis plizyè karakteristik enpòtan nan zouti tès blòk:

  • Kapasite nan otomatikman deplwaye yon rezo blockchain nan kondisyon repete. Faktè sa a enpòtan lè w ap devlope pati sistèm nan blockchains: algoritm konsansis, finalite, kontra entelijan sistèm.
  • Pri a nan posede sistèm nan, resous yo boule ak konvenyans pou itilize konstan. Faktè sa a bay pwojè a bon jan kalite tès pou ti kòb.
  • Fleksibilite ak senplisite nan konfigirasyon tès la. Faktè sa a ogmante chans pou idantifye pwoblèm sistèm - gen mwens chans pou manke yon bagay enpòtan.
  • Personnalisation pou kalite espesifik blockchains. Devlope yon solisyon ki baze sou yon sèl ki deja egziste ka anpil amelyore kalite epi redwi depans tan.
  • Konvenyans ak aksè nan rezilta yo jwenn ak kalite yo (rapò, mezi, graf, mòso bwa, elatriye). Sa a se absoliman nesesè si ou vle swiv istwa a nan devlopman yon pwodwi a, oswa si ou bezwen analiz pwofon nan konpòtman an nan rezo blòk la.

Bòn chans ak tès ou yo epi se pou blockchains ou yo rapid ak tolerans!

Sous: www.habr.com

Add nouvo kòmantè