
ఈ రోజుల్లో, బ్లాక్చెయిన్ టెస్టింగ్ మరియు బెంచ్మార్కింగ్ సొల్యూషన్లు ఒక నిర్దిష్ట బ్లాక్చెయిన్ లేదా దాని ఫోర్క్లకు అనుగుణంగా రూపొందించబడుతున్నాయి. అయితే, కార్యాచరణలో విభిన్నంగా ఉండే అనేక సాధారణ సొల్యూషన్లు కూడా ఉన్నాయి: కొన్ని ఓపెన్-సోర్స్ ప్రాజెక్ట్లు, మరికొన్ని SaaSగా అందించబడతాయి, మరియు చాలా వరకు బ్లాక్చెయిన్ డెవలప్మెంట్ బృందాలచే సృష్టించబడిన ఇన్-హౌస్ సొల్యూషన్లు. అయితే, అవన్నీ ఒకే రకమైన సమస్యలను పరిష్కరిస్తాయి. ఈ వ్యాసంలో, బ్లాక్చెయిన్ టెస్టింగ్ కోసం ప్రత్యేకంగా రూపొందించబడిన అనేక ఉత్పత్తులను నేను క్లుప్తంగా సమీక్షించాను.
బ్లాక్చెయిన్ నెట్వర్క్ ఒక డిస్ట్రిబ్యూటెడ్ డేటాబేస్ లాగానే పనిచేస్తుంది, కాబట్టి టెస్టింగ్ కోసం అవే సాధనాలను మరియు పద్ధతులను ఉపయోగించవచ్చు. డిస్ట్రిబ్యూటెడ్ డేటాబేస్లను ఎలా టెస్ట్ చేస్తారో మరింత బాగా అర్థం చేసుకోవడానికి, ఈ సమగ్రమైన వనరులు మరియు వ్యాసాల సేకరణను చూడండి. ఉదాహరణకు, ఇందులో లేటెన్సీని విభాగాలుగా విభజించారు మరియు రెప్లికేషన్ అల్గారిథమ్లలో బగ్లను ఎలా కనుగొనాలో అర్థం చేసుకోవడానికి, దీనిని చదవమని నేను సిఫార్సు చేస్తున్నాను. .
బ్లాక్చెయిన్ టెస్టింగ్ మరియు బెంచ్మార్కింగ్ కోసం కొన్ని జనాదరణ పొందిన పరిష్కారాలను నేను వివరిస్తాను. ఇలాంటి ప్రయోజనాల కోసం ఉపయోగపడే ఇతర సాఫ్ట్వేర్ ఉత్పత్తులను మీరు కామెంట్లలో వివరిస్తే నేను సంతోషిస్తాను.

బ్లాక్చెయిన్ల కోసం ప్రత్యేకంగా రూపొందించబడనప్పటికీ, ప్రయోగాలు చేయడానికి ఇప్పటికే ఒక నెట్వర్క్ ఉన్నట్లయితే, వాటి పనితీరును సమర్థవంతంగా పరీక్షించడానికి వీలు కల్పించే ఒక సాధనంతో నేను ప్రారంభిస్తాను. సర్వర్ మరియు నెట్వర్క్ సమస్యలు తలెత్తినప్పుడు కూడా పనితీరును కొనసాగించగల సామర్థ్యమే ఒక డిస్ట్రిబ్యూటెడ్ సిస్టమ్ యొక్క విశ్వసనీయతలో ఒక కీలక అంశం. వీటిలో నెట్వర్క్ లాగ్, డిస్క్ నిండిపోవడం, బాహ్య సేవలు (DNS) అందుబాటులో లేకపోవడం, హార్డ్వేర్ వైఫల్యాలు మరియు వందలాది ఇతర కారణాలు ఉండవచ్చు. పెద్ద సంఖ్యలో మెషీన్లలో ఏకకాలంలో నడుస్తున్న ఏదైనా సిస్టమ్ యొక్క స్థితిస్థాపకతను పరీక్షించడానికి, మీరు దీనిని ఉపయోగించవచ్చు. ఇది కేయాస్ ఇంజనీరింగ్ అనే అత్యంత ప్రభావవంతమైన విధానాన్ని ఉపయోగిస్తుంది.
గ్రెమ్లిన్ తన సొంత నెట్వర్క్ ఏజెంట్ను ఉపయోగించి, అవసరమైన సంఖ్యలో మెషీన్లపై వివిధ రకాల సమస్యలను సృష్టిస్తుంది: నెట్వర్క్ లాగ్లు, ఏదైనా వనరు (CPU, డిస్క్, మెమరీ, నెట్వర్క్) ఓవర్లోడ్ కావడం, వ్యక్తిగత ప్రోటోకాల్లను నిలిపివేయడం, మొదలైనవి. బ్లాక్చెయిన్ల కోసం, వాస్తవ ప్రపంచ సమస్యలను అనుకరిస్తూ మరియు నెట్వర్క్ ప్రవర్తనను పర్యవేక్షిస్తూ, గ్రెమ్లిన్ను టెస్ట్నెట్ సర్వర్లపై ఉపయోగించవచ్చు. దీనితో, డెవలపర్లు మరియు నిర్వాహకులు ఒక నియంత్రిత వాతావరణంలో వైఫల్యం సంభవించినప్పుడు లేదా కోడ్ అప్డేట్ సమయంలో సిస్టమ్కు ఏమి జరుగుతుందో గమనించవచ్చు. అయితే, నెట్వర్క్ను ముందుగానే కాన్ఫిగర్ చేసి, అమలు చేయాలి మరియు అవసరమైన మెట్రిక్ల సేకరణను ఏర్పాటు చేయాలి.
గ్రెమ్లిన్ అనేది ఆర్కిటెక్ట్లు, డెవ్ఆప్స్ మరియు సెక్యూరిటీ నిపుణుల కోసం ఒక అనుకూలమైన సాధనం, మరియు బ్లాక్చెయిన్లతో సహా ఇప్పటికే ఉన్న మరియు నడుస్తున్న ఏవైనా డిస్ట్రిబ్యూటెడ్ సిస్టమ్లను పరీక్షించడానికి ఇది ఒక సార్వత్రిక పరిష్కారం.

హైపర్లెడ్జర్ కాలిపర్ అనేది మరింత ప్రత్యేకమైన పరిష్కారం. కాలిపర్ ప్రస్తుతం హైపర్లెడ్జర్ కుటుంబంలోని సభ్యులైన (ఫ్యాబ్రిక్, సాటూత్, ఇరోహా, బర్రో, బేసు), అలాగే ఇథీరియం మరియు FISCO BCOS నెట్వర్క్తో సహా అనేక బ్లాక్చెయిన్లకు మద్దతు ఇస్తుంది.
కాలిపర్ మిమ్మల్ని పరీక్ష కోసం బ్లాక్చెయిన్ నెట్వర్క్ టోపాలజీ మరియు కాంట్రాక్టులను నిర్వచించడానికి, అలాగే నోడ్ కాన్ఫిగరేషన్ను వివరించడానికి అనుమతిస్తుంది. బ్లాక్చెయిన్ నోడ్లు ఒకే మెషీన్లో డాకర్ కంటైనర్లలో డిప్లాయ్ చేయబడతాయి. ఆ తర్వాత మీరు అవసరమైన వాటిని ఎంచుకోవచ్చు. మరియు ప్రారంభించిన తర్వాత పరీక్ష ఫలితాలతో కూడిన నివేదిక ఫైల్ను స్వీకరించండి. కాలిపర్ మెట్రిక్స్ మరియు బెంచ్మార్కింగ్ విధానం యొక్క పూర్తి జాబితాను ఇక్కడ చూడవచ్చు. మీకు బ్లాక్చెయిన్ బెంచ్మార్కింగ్పై ఆసక్తి ఉంటే ఇది ఒక గొప్ప వ్యాసం. మీరు ప్రత్యేక ప్రోమిథియస్/గ్రాఫానా అప్లికేషన్లో కూడా మెట్రిక్స్ సేకరణను కాన్ఫిగర్ చేయవచ్చు.
హైపర్లెడ్జర్ కాలిపర్ అనేది డెవలపర్లు మరియు సిస్టమ్ ఆర్కిటెక్ట్ల కోసం ఉద్దేశించిన ఒక సాధనం, ఎందుకంటే ఇది పునరావృతమయ్యే పరీక్షలను, స్వయంచాలక పరీక్ష మరియు బెంచ్మార్కింగ్ను నిర్ధారిస్తుంది. దీనిని బ్లాక్చెయిన్ కోర్ సిస్టమ్ల అభివృద్ధిలో ఉపయోగిస్తారు: ఏకాభిప్రాయ అల్గారిథమ్లు, స్మార్ట్ కాంట్రాక్ట్లను ప్రాసెస్ చేయడానికి ఒక వర్చువల్ మెషీన్, పీర్-టు-పీర్ లేయర్, మరియు ఇతర సిస్టమ్ మెకానిజమ్లు.

— EOS-ఆధారిత నెట్వర్క్ల కోసం ఏకాభిప్రాయం మరియు ఫైనాలిటీ అల్గారిథమ్ల అభివృద్ధి సమయంలో మరియు పారిటీ సబ్స్ట్రేట్ (పోల్కాడాట్) ఆధారిత పారాచెయిన్ల పరీక్ష సమయంలో ఉద్భవించిన ఒక సాధనం. దీని కార్యాచరణ హైపర్లెడ్జర్ కాలిపర్ను పోలి ఉంటుంది, ఎందుకంటే ఇది ఏదైనా డిస్ట్రిబ్యూటెడ్ సిస్టమ్ యొక్క నోడ్ల నుండి మరియు టెస్ట్ స్క్రిప్ట్లను నడుపుతున్న క్లయింట్ మెషీన్ల నుండి ముఖ్యమైన మెట్రిక్లను సేకరించడానికి అనుమతిస్తుంది.
మిక్స్బైట్స్ ట్యాంక్ అనేక క్లౌడ్ సేవలను (డిజిటల్ ఓషన్, గూగుల్ క్లౌడ్ ఇంజిన్, మొదలైనవి) ఉపయోగిస్తుంది, దీనిలో ఇది బహుళ నోడ్లను ప్రారంభించడం, ప్రాథమిక కాన్ఫిగరేషన్ విధానాలను నిర్వహించడం, విభిన్న మెషీన్లపై సమాంతరంగా అనేక బెంచ్మార్క్లను అమలు చేయడం, అవసరమైన మెట్రిక్లను సేకరించడం మరియు నెట్వర్క్ను స్వయంచాలకంగా మూసివేయడం వంటివి చేయగలదు.
మిక్స్బైట్స్ ట్యాంక్, పరీక్ష తర్వాత అవసరం లేని వనరులను స్వయంచాలకంగా నిలిపివేయడం ద్వారా, తక్కువ ఖర్చుతో కూడిన క్లౌడ్ సర్వర్ వినియోగానికి వీలు కల్పిస్తుంది. దీనిలోని మరో ప్రత్యేక లక్షణం మాలిక్యూల్ ప్యాకేజీని ఉపయోగించడం. ఇది డెవలపర్లు కోరుకున్న బ్లాక్చెయిన్ విస్తరణను స్థానికంగా పరీక్షించుకోవడానికి అనుమతిస్తుంది.
మిక్స్బైట్స్ ట్యాంక్, భౌగోళికంగా విస్తరించి ఉన్న పెద్ద సంఖ్యలో సర్వర్లు మరియు క్లయింట్లతో కూడిన వాస్తవ నెట్వర్క్లలో తలెత్తే అడ్డంకులను మరియు అల్గారిథమిక్ లోపాలను ముందుగానే గుర్తించడానికి వీలు కల్పిస్తుంది. అవసరమైతే, వివిధ ఖండాలలో విస్తరించి ఉన్న వాస్తవ సంఖ్యలో నోడ్లతో, అత్యంత పునరావృతమయ్యే పరిస్థితులలో, క్లయింట్లు ఒక నిర్దిష్ట TPS వద్ద లావాదేవీలను పంపినప్పుడు నోడ్లపై ఏమి జరుగుతుందో అర్థం చేసుకోవడానికి ఈ ట్యాంక్ మీకు సహాయపడుతుంది.

వైట్బ్లాక్ జెనెసిస్ అనేది ఇథీరియమ్ ఆధారిత బ్లాక్చెయిన్లను పరీక్షించడానికి ఉపయోగపడే ఒక ప్లాట్ఫారమ్. ఈ సాధనం విస్తృత శ్రేణి ఫీచర్లను అందిస్తుంది: ఇది ఒక నెట్వర్క్ను ప్రారంభించడానికి, అవసరమైన సంఖ్యలో ఖాతాలను సృష్టించడానికి, అవసరమైన సంఖ్యలో క్లయింట్లను సెటప్ చేయడానికి, నెట్వర్క్ టోపాలజీని కాన్ఫిగర్ చేయడానికి, బ్యాండ్విడ్త్ మరియు ప్యాకెట్ లాస్ పారామీటర్లను పేర్కొనడానికి, మరియు పరీక్షను నిర్వహించడానికి మిమ్మల్ని అనుమతిస్తుంది.
వైట్బ్లాక్ జెనెసిస్ దాని స్వంత పరీక్షా సామర్థ్యాలను అందిస్తుంది. డెవలపర్లు కేవలం పరీక్షా పారామితులను నిర్దేశించి, సిద్ధంగా ఉన్న APIని ఉపయోగించి వాటిని అమలు చేసి, అనుకూలమైన డాష్బోర్డ్ను ఉపయోగించి ఫలితాలను వీక్షించవచ్చు.
ప్రతి ముఖ్యమైన కోడ్ మార్పు కోసం ప్లాట్ఫారమ్ స్వయంచాలకంగా అమలు చేసే ఒక సమగ్ర పరీక్షను కాన్ఫిగర్ చేయడానికి వైట్బ్లాక్ జెనెసిస్ మిమ్మల్ని అనుమతిస్తుంది. దీనివల్ల మీరు లోపాలను ముందుగానే పట్టుకోవచ్చు మరియు లావాదేవీ వేగం, నోడ్ వనరుల వినియోగం వంటి కీలక నెట్వర్క్ పారామీటర్లపై మార్పుల ప్రభావాన్ని తక్షణమే అంచనా వేయవచ్చు.
మ్యాడ్ట్
డిస్ట్రిబ్యూటెడ్ సిస్టమ్స్ను పరీక్షించడానికి మరో ఆసక్తికరమైన కొత్త ఉత్పత్తి ఇది పైథాన్లో వ్రాయబడింది మరియు ఒక సాధారణ కాన్ఫిగరేషన్ స్క్రిప్ట్ను ఉపయోగించి అవసరమైన నెట్వర్క్ టోపాలజీని, అలాగే అవసరమైన సంఖ్యలో సర్వర్లు మరియు క్లయింట్లను సృష్టించడానికి మిమ్మల్ని అనుమతిస్తుంది (దీని తర్వాత, ఈ సేవ నెట్వర్క్ను అనేక డాకర్ కంటైనర్లలో విస్తరించి, ఒక వెబ్ ఇంటర్ఫేస్ను ప్రారంభిస్తుంది, దీనిలో నెట్వర్క్ సర్వర్లు మరియు క్లయింట్ల నుండి వచ్చే సందేశాలను పర్యవేక్షించవచ్చు. బ్లాక్చెయిన్ పరీక్ష కోసం Madtను ఉపయోగించవచ్చు—ఈ ప్రాజెక్ట్ యొక్క రిపోజిటరీలో కడెమ్లియా ప్రోటోకాల్ ఆధారిత పీర్-టు-పీర్ నెట్వర్క్ పరీక్ష ఉంటుంది, ఇది నోడ్లకు డేటా డెలివరీ జాప్యాన్ని క్రమంగా పెంచి, ఆ డేటా యొక్క స్థితిని తనిఖీ చేస్తుంది.
Madt అనేది సాపేక్షంగా కొత్త ఉత్పత్తి అయినప్పటికీ, దాని అత్యంత అనువైన నిర్మాణం కారణంగా, ఇది ఒక క్రియాత్మక ఉత్పత్తిగా అభివృద్ధి చెందగలదు.
ఇతర పరిష్కారాలు
బ్లాక్చెయిన్ సిస్టమ్ యొక్క దాదాపు ఏ పరీక్షకైనా ప్రాథమిక దృశ్యాలను అమలు చేయడం, ఖాతాలను సిద్ధం చేయడం మరియు పరీక్షా పరిస్థితులను ఏర్పాటు చేయడం అవసరం (ఇందులో బహుళ చైన్ ఫోర్క్ల ఫలితంగా ఏర్పడే ఏకాభిప్రాయ లోపాలను పరీక్షించడం, హార్డ్ ఫోర్క్ దృశ్యాలను అమలు చేయడం, సిస్టమ్ పారామితులను మార్చడం మొదలైనవి ఉండవచ్చు). ఈ మార్పులన్నీ వేర్వేరు బ్లాక్చెయిన్లలో విభిన్నంగా నిర్వహించబడతాయి, కాబట్టి బృందాలు ఉత్పత్తి పరీక్ష మరియు బెంచ్మార్కింగ్ను అంతర్గత CI/CDకి క్రమంగా అనుగుణంగా మార్చుకోవడం మరియు వారి స్వంత అభివృద్ధిని ఉపయోగించడం సులభం అవుతుంది, బ్లాక్చెయిన్ యొక్క కార్యాచరణ అభివృద్ధి చెందుతున్న కొద్దీ ఇది క్రమంగా మరింత సంక్లిష్టంగా మారుతుంది.
అయితే, సిద్ధంగా ఉన్న పరిష్కారాలను ఉపయోగించడం వల్ల ఈ బృందాల పరీక్షా సమయం గణనీయంగా తగ్గుతుంది, కాబట్టి రాబోయే సంవత్సరాల్లో ఈ సాఫ్ట్వేర్ చురుకుగా అభివృద్ధి చేయబడుతుందని నేను భావిస్తున్నాను.
తీర్మానం
ఈ సంక్షిప్త అవలోకనాన్ని ముగించడానికి, నేను బ్లాక్చెయిన్ టెస్టింగ్ సాధనాల యొక్క అనేక ముఖ్యమైన లక్షణాలను జాబితా చేస్తాను:
- పునరావృతమయ్యే పరిస్థితులలో బ్లాక్చెయిన్ నెట్వర్క్ను స్వయంచాలకంగా అమలు చేయగల సామర్థ్యం. బ్లాక్చెయిన్ల యొక్క సిస్టమ్ భాగాలైన ఏకాభిప్రాయ అల్గారిథమ్లు, ఫైనాలిటీ మరియు సిస్టమ్ స్మార్ట్ కాంట్రాక్ట్లను అభివృద్ధి చేసేటప్పుడు ఈ అంశం ముఖ్యమైనది.
- సిస్టమ్ యొక్క యాజమాన్య వ్యయం, వనరుల వినియోగం మరియు వాడుకలో సౌలభ్యం అనేవి, ఈ ప్రాజెక్ట్ తక్కువ ఖర్చుతో అధిక-నాణ్యత గల టెస్టింగ్ను అందిస్తుందని నిర్ధారిస్తాయి.
- టెస్ట్ కాన్ఫిగరేషన్లో సౌలభ్యం మరియు సులభత్వం. ఈ అంశం సిస్టమ్ సమస్యలను గుర్తించే అవకాశాలను పెంచుతుంది—ఏదైనా ముఖ్యమైన విషయాన్ని విస్మరించే అవకాశం తక్కువగా ఉంటుంది.
- నిర్దిష్ట బ్లాక్చెయిన్ రకాల కోసం అనుకూలీకరణ. ఇప్పటికే ఉన్న దాని ఆధారంగా ఒక పరిష్కారాన్ని అభివృద్ధి చేయడం ద్వారా నాణ్యతను గణనీయంగా మెరుగుపరచవచ్చు మరియు సమయ ఖర్చులను తగ్గించవచ్చు.
- పొందిన ఫలితాలు మరియు వాటి రకం (నివేదికలు, కొలమానాలు, గ్రాఫ్లు, లాగ్లు మొదలైనవి) యొక్క సౌలభ్యం మరియు అందుబాటు. మీరు ఒక ఉత్పత్తి అభివృద్ధి చరిత్రను ట్రాక్ చేయాలనుకుంటే లేదా బ్లాక్చెయిన్ నెట్వర్క్ ప్రవర్తనపై లోతైన విశ్లేషణ అవసరమైతే ఇది ఖచ్చితంగా అవసరం.
మీ టెస్టింగ్కు శుభాకాంక్షలు, మరియు మీ బ్లాక్చెయిన్లు వేగవంతంగా, లోపాలను తట్టుకునే విధంగా ఉండాలని ఆశిస్తున్నాను!
మూలం: www.habr.com
