paint-brush
DApp Yako Inaweza Kudhurika - Hiki ndicho Kinachosababishakwa@emmanuelaj
Historia mpya

DApp Yako Inaweza Kudhurika - Hiki ndicho Kinachosababisha

kwa Emmanuel Ajala10m2024/09/29
Read on Terminal Reader

Ndefu sana; Kusoma

Nodi za RPC (Simu ya Utaratibu wa Mbali) hutumika kama uti wa mgongo wa miundombinu ya blockchain, kuwezesha dApps kuwasiliana na blockchain. Nodi za RPC za kati, hata hivyo, hutoa hatari kama vile pointi moja ya kushindwa, vikwazo vya scalability, na udhaifu wa usalama. Uchunguzi kifani kama kukatika kwa Infura huangazia jinsi kutegemea miundombinu ya kati kunaweza kusababisha usumbufu mkubwa. Njia mbadala kama vile nodi za RPC zinazojipangisha na zilizogatuliwa hutoa udhibiti mkubwa zaidi, kutegemewa na ustahimilivu wa makosa, lakini huja na changamoto zao kama vile gharama kubwa na matengenezo.
featured image - DApp Yako Inaweza Kudhurika - Hiki ndicho Kinachosababisha
Emmanuel Ajala HackerNoon profile picture
0-item
1-item

Nodi za RPC (Utaratibu wa Mbali) ni sehemu muhimu za miundombinu ya blockchain. Wanashughulikia mawasiliano kati ya leja isiyoweza kubadilika iliyogatuliwa na programu za mbele. Miundombinu hii ya kati hufanya kama mjumbe kuwezesha maombi na majibu kati ya nodi na huduma zilizojengwa kwenye blockchain.


Uendeshaji wa kimsingi wa RPC



Nodi za RPC ni kama Huduma ya Posta ya Marekani (USPS), ambayo huwezesha uhamishaji wa taarifa kutoka kwa dApp hadi kwa blockchain na nyuma. Kama vile unavyotegemea huduma ya posta kupata barua zako kutoka sehemu moja hadi nyingine, dApps hutegemea nodi za RPC kufikia blockchain. Na bila nodi hizi, programu zilizogatuliwa zitajitahidi kufanya kazi.


Nodi za RPC zimebadilika kwa kiasi kikubwa zaidi ya miaka 10 iliyopita, lakini uwekaji kati wa miundombinu umeleta hatari iliyofichika. Makala haya yanalenga kuchunguza dhima ya nodi za RPC, hatari ya kuwekwa kati, na njia mbadala zinazoweza kulinda dApps zako dhidi ya athari.

Mageuzi ya Miundombinu ya RPC

Wazo la simu za utaratibu wa mbali lilianza miaka ya 1970 wakati wanasayansi wa kompyuta walitafuta njia za kuwasiliana kati ya mashine tofauti ili kufanya kompyuta zilizosambazwa kuwa wazi kwa watengenezaji.


Katika miaka ya 1980, RPC ya kwanza ilitengenezwa na Sun Microsystem inayoitwa Network File System. Sun Microsystem ilitengeneza itifaki ya Open Network Computing RPC, na hii imekuwa kiwango cha mawasiliano kati ya programu tofauti kwenye mtandao.


Hata hivyo, mwanzoni mwa miaka ya 1990, Microsoft ilitengeneza na kutekeleza toleo lake la RPC ili kuwezesha mawasiliano kati ya michakato kwenye mifumo inayotegemea Windows. Mapema miaka ya 2000, JSON RPC, ambayo hutumia JSON kwa usimbaji data, ilianzishwa. Ikawa maarufu miongoni mwa watengenezaji na watengeneza programu kwa sababu ya urahisi wa kuhamisha data sanifu.


Katika muongo mmoja uliopita, dApps zimekuwa sehemu muhimu ya tasnia ya blockchain na RPC imekuwa miundombinu bora inayohitajika kukamilisha maze.


Kwa nini?


  1. Uwezo wake wa kupiga simu ya utendakazi wa mbali kwenye kompyuta nyingine kama simu ya utendaji ya ndani ni kamili kwa usanifu wa blockchain.
  2. Ukosefu wa utaifa wake na uzani mwepesi huwezesha blockchain na husaidia katika kipimo data na kukokotoa hali za vizuizi.


Kwa sababu ya faida, RPC ilianza kutumiwa haraka sana. RPC ilipendekezwa kuwezesha programu zilizoandikwa katika lugha tofauti kuunganishwa na kuwasiliana. Wazo la msingi nyuma ya RPC ni kupiga simu ya utendakazi ya mbali kwenye kompyuta au seva nyingine kana kwamba ni simu ya kazi ya ndani.


Kwa miaka mingi, kumekuwa na aina tatu kuu za RPCs (Iliyowekwa Kati, Iliyowekwa Madaraka, na Mwenyeji Mwenyewe) na kila moja ni ya kipekee kwa njia yake.

Hatari ya Nodi za RPC za Kati

Nodi za RPC za kati ni nodi zinazodhibitiwa na kudhibitiwa na chombo kimoja. Nodi hizi za kati zina miundo inayofanana na huduma za upangishaji wa mtandao wa web2 kama vile AWS (Huduma za Wavuti za Amazon), Microsoft Azure, na Itifaki ya Wingu la Google (GCP).


Ingawa watoa huduma hawa wa kati wa web3 RPC hudumisha miundombinu ya nodi kwa programu zilizogatuliwa, uchunguzi wa kina katika mfumo ulifichua jinsi walivyo katikati. Watoa huduma hawa wa miundombinu ya web3 kwa kinadharia pia wanategemea miundombinu ya seva ya web2 cloud hosting ili kudumisha huduma zao.


Kwa hivyo, watoa huduma hawa wa wingu wanapokumbana na kukatika, huduma za web3, ambazo zinakusudiwa kugatuliwa, pia hupata wakati wa kupungua. Hapa kuna mifano ya nodi za RPC za kati: Alchemy, Infura, Quicknode, nk.


Wacha tuangalie hatari zinazoletwa na nodi za RPC za kati kwa miundombinu ya web3.


  1. Hoja Moja ya Kushindwa: Kuwa na nukta moja ya kutofaulu kila wakati huathiri kutegemewa kwa mfumo. Seva moja au mtandao wa seva zinazodhibitiwa na huluki moja italeta hoja muhimu ambayo inaweza kusababisha kushindwa kwa dApp yako.



    Ikiwa seva data inapitishwa kupitia inashindwa, kiungo kati ya blockchain na dApp kinavunjika na mfumo unashindwa. Hatua moja ya kutofaulu itaathiri kutegemewa kwa mfumo hasa katika programu zinazohusiana na fedha kama vile mifumo ya DeFi.


  1. Suala la Kuongezeka : Nodi za RPC zilizowekwa kati zinaweza kuwa vikwazo wakati wa msongamano mkubwa wa magari na hii itapunguza uimara wa dApp. Wakati mtandao una msongamano kwa sababu ya kutegemea nodi moja, huathiri ufanisi wa dApps na huongeza muda wa kusubiri, ambao huathiri watumiaji.


    Kwa sababu ni mfumo wa kati, kuongeza scalability ya dApp haiwezekani.


  1. Hatari ya Usalama na Hatari: Sehemu kuu au iliyojitolea iko wazi kwa mazingira magumu na inaweza kuwa lengo rahisi kwa watu wasio waaminifu. Data inaweza kufichuliwa na kubadilishwa, na hatimaye kuathiri ufanyaji maamuzi katika dApps.


    Zaidi ya hayo, shambulio lililoratibiwa kwa mtoa huduma pia linaweza kutekelezwa kwa urahisi, hatimaye kuwafichua watumiaji wa Dapp. Huluki moja inaweza kulazimishwa na mashirika ya serikali kuzima ombi.


    Hapa kuna mfano:


    Mnamo 2022, MetaMask ilidaiwa kuwazuia watumiaji wenye anwani za IP za Venezuela na Irani kufanya miamala kwenye blockchain.


    Hili liliwezekana kwa sababu ya RPC ya kati (Infura) inayotumiwa na mkoba wa web3.

Uchunguzi wa Uchunguzi wa Kushindwa na Athari za Nodi za RPC za Kati

RPC ya kati inaweza kuonekana kama wako salama lakini sivyo. Bado, kwa mashaka juu ya hili, hebu tuangalie baadhi ya masomo ya kesi kuhusu kushindwa hapo awali kwa RPC za kati.

Kesi ya Infura

Infura ni mojawapo ya watoa huduma wa kwanza wa blockchain Backend kama Huduma (IaaS) katika web3, iliyoletwa kwako kwa makubaliano. Miundombinu inadaiwa kupatikana kwa muda wa 99.9% na inapatikana kwa EVM 16 za blockchain.


Hadi 2020, Infura imekuwa ikichukuliwa kuwa shujaa, kama moja ya mipaka ya maendeleo ya dApp na inayoongoza kupitishwa kwa wingi kwa crypto/blockchain.


Mnamo tarehe 11 Novemba 2020, Infura ilipata kukatizwa kwa huduma kutokana na hitilafu iliyoathiri toleo la GEth linaloendeshwa na Infura.


Suala kuu hapa ni kwamba mfumo wa Infura ulikuwa chini na watumiaji wote wa miundombinu ya Infura hawakuweza kuunganishwa kwenye blockchain. Seva zilitatizwa kwa sababu ya hitilafu, na hatari ya kuwekwa kati nyuma ya mtandao uliogatuliwa ilifichuliwa.


Metamask, pochi kubwa zaidi ya Ethereum inayowakabili watumiaji na mamilioni ya watumiaji wanaofanya kazi ilikatizwa. Yote kwa sababu wanategemea Infura, mtoa huduma mkuu wa RPC.

Wasiwasi wa Uwekaji Kati Wakati wa Uboreshaji wa Mtandao

Wakati wa uboreshaji wa mtandao/hardforks, kwa kawaida kuna wasiwasi kuhusu hitilafu za huduma hasa kuhusu dAapps zinazotegemea watoa huduma wa miundo msingi. Hofu hizi ni pamoja na:


Hatua moja ya kushindwa, ambayo inaweza kuharibu shughuli na kusababisha kupungua.


Hapa kuna mifano ya zamani:


  • Wakati wa hardfork ya Ethereum Istanbul mnamo 2019 , watoa huduma wengi wa kati wa RPC walipata wakati wa kupumzika. Baadhi ya nyakati hizi za kupungua ni kama matokeo ya mtandao kupitia uboreshaji. Programu za DeFi haziwezi kuchakata miamala, hivyo kuwaacha watumiaji katika utata.


  • Wakati wa Uboreshaji wa Polygon Heimdall , watoa huduma wa RPC walikabiliana na matatizo ya muunganisho na hawakusawazishwa na mtandao wa blockchain. Watumiaji hawakuweza kufikia DeFi dApps kwa saa kadhaa, kwa hivyo, miamala ilicheleweshwa au imeshindwa.

Upakiaji wa Solana RPC mnamo 2021

Solana alikumbwa na hitilafu nyingi mwaka wa 2021. Mojawapo ya hitilafu hizo mbaya husababishwa na upakiaji mwingi wa huduma za RPC kuu wakati wa vipindi vya kilele. Kadiri nodi za umma zilivyozidiwa, watumiaji hawakuweza kuingiliana na Solana Blockchain kwa saa kadhaa na mtandao ulikabiliwa na kusitishwa kwa huduma kamili kwa saa nyingi.


Kesi hizi za mikono ya uso na zingine nyingi zinaonyesha umuhimu wa watoa huduma wa RPC kwa matumizi ya blockchain. Ingawa watoa huduma wa kati bado wanatumiwa na dApps nyingi (labda kwa kutojua au kutokuwa na mawazo), kwa miaka mingi kumekuwa na njia mbadala.


Katika sehemu zinazofuata, tutakuelekeza kupitia njia zingine mbadala na jinsi zimekuwa chaguo bora kwa maendeleo ya blockchain.

Kugatua DApp Yako: Mibadala ya Juu kwa Nodi za RPC za Kati

Nodi za RPC zinazojitegemea

Kama jina lake linavyodokeza, nodi za RPC zinazojipangisha mwenyewe ni nodi unazopangisha au kudhibiti kwenye vifaa vyako au miundombinu ya wingu. Badala ya kutegemea watoa huduma wengine wa RPC, unaweza kupangisha nodi zako za RPC. Unapata ufikiaji wa moja kwa moja kwenye mtandao wa blockchain, thibitisha miamala, uliza data ya blockchain moja kwa moja, na kuingiliana na dApps.


Faida za Nodi za RPC zinazojiendesha ni pamoja na:


  1. Autonomy/Control : kuendesha nodi zako inamaanisha kuwa una udhibiti kamili juu ya usanidi wa nodi. Unaweza kubinafsisha programu kulingana na mahitaji yako, kutumia masasisho kwa hiari yako, na kudhibiti usalama.


  1. Kuegemea : sio lazima utafute kukatika kwa huduma, au kutofaulu kwa sababu ya maswala ya mtoaji, kawaida kwa nodi za kati za wahusika wengine.


  1. Ufikiaji wa Mtandao wa Moja kwa moja : kuendesha nodi kwenye miundombinu yako inamaanisha kuwa unawajibika kwa huduma zao, una ufikiaji mdogo wa latency kwenye mtandao wa blockchain.


Ingawa nodi zinazojiendesha zinaonekana kuwa za kutegemewa zaidi kuliko njia mbadala za kati, zina hasara zao. Na hawa hapa:


  1. Mahitaji ya Juu ya Rasilimali . Kukaribisha nodi ya RPC kunahitaji nafasi kubwa ya diski kuhifadhi historia ya blockchain. Hifadhi, kipimo data, na nguvu ya usindikaji inayohitajika kuendesha nodi za RPC inaweza kuwa nyingi sana.


    Zaidi ya hayo, unahitaji maingiliano ya mara kwa mara na blockchain, na hii inaweza kutumia kiasi kikubwa cha bandwidth ambayo inaweza kuwa kubwa. Nguvu ya uchakataji inayohitajika pia inaweza kuwa nyingi sana, haswa wakati wa kuchakata maelezo wakati wa hali ya juu ya trafiki.


  2. Ghali Kusimamia : kusanidi nodi za kujipangisha inaonekana kuwa chaguo bora, lakini sivyo. Gharama ya vifaa, gharama ya uendeshaji, na gharama ya fursa inaweza kuwa kubwa sana.


    Gharama za uendeshaji kama vile umeme, kipimo data cha intaneti, na ada za huduma ya wingu (ikiwa unatumia miundombinu ya wingu) zinaweza kuwa nyingi sana. Ili kuendesha nodi yenye mafanikio, unahitaji timu iliyojitolea ya wataalam kuwa katika hali ya kusubiri ili kurekebisha tatizo lolote au unaweza kuhatarisha kukatika kwa saa kadhaa.


  1. Usanidi na Matengenezo Changamano : Unahitaji ufahamu thabiti wa teknolojia ya blockchain, usimamizi wa seva na mbinu bora za usalama. Matengenezo ya mara kwa mara ili kuepuka kukatika kwa programu kama vile masasisho ya programu, viraka vya usalama na uboreshaji wa maunzi ili kuweka nodi zifanye kazi vizuri.


  1. Uwezo Mdogo na Hakuna Usaidizi kwa Multichain : Tofauti na watoa huduma wengine wenye miundo ya kushughulikia tatizo hili, ili kuingiliana na minyororo mingi ya kuzuia, unahitaji kupangisha nodi kwa kila blockchain ambayo inaweza kutumia rasilimali nyingi na isiyo endelevu.


    Nodi za kujisimamia hutoa uhuru, udhibiti mkubwa wa mwingiliano wa blockchain, na faragha. Zinahitaji rasilimali muhimu, utaalam wa teknolojia, na matengenezo, ambayo inaweza kuwa haiwezekani kwa timu kali zaidi ya maendeleo ya blockchain inayopatikana.

Nodi za RPC zilizogatuliwa

RPC zilizogatuliwa ni seva za blockchain ambazo huruhusu dApps kuwasiliana na blockchain kwa njia ya ugatuzi. Watoa huduma wa RPC waliogatuliwa husambaza miundombinu yao katika maeneo mengi. Hii inapunguza nukta moja ya kushindwa, huongeza uthabiti na kasi ya mtandao, na inapunguza muda wa kusubiri.


ugatuaji wa nodi iliyosambazwa



Manufaa ya nodi za RPC Iliyogatuliwa juu ya zingine ni pamoja na


  1. Mtandao Unaosambazwa : mtandao uliosambazwa wa watoa huduma wa nodi wanafanya kazi ili kushughulikia maombi, kujibu maswali, na kuingiliana na blockchain.


  1. Uendeshaji hauaminiki : Kutomwamini mtoa huduma hata mmoja. Maombi yanasambazwa kwa watoa huduma wengi kuhakikisha hakuna mhusika mmoja aliye na udhibiti kamili wa data au maombi yaliyofanywa.


  1. Upinzani wa Udhibiti : Kwa kuwa nodi za RPC haziko katika eneo la mamlaka moja, huluki/mamlaka haiwezi kuhakiki, kuzuia, au kuzuia ufikiaji wa blockchain kwa urahisi. Ikiwa miundombinu ya RPC itazimwa kwa sababu ya sera kutoka eneo la mamlaka, maombi ya dApp yanaweza kutumwa kwa nodi nyingine za RPC kutoka eneo tofauti la mamlaka.


  1. Uvumilivu wa Makosa : Muundo uliogatuliwa wa huduma za RPC huwafanya kuwa sugu kwa kukatika kwa umeme. Ikiwa nodi italetwa chini, mwingine atachukua nafasi ya huduma. Hii inapunguza muda wa kupumzika na kuhakikisha upatikanaji thabiti.


Changamoto ni pamoja na:

  1. Muda wa kusubiri : Ikiwa haijawekwa vizuri, huduma za RPC zilizogatuliwa zinaweza kuanzisha muda wa kusubiri kwani zinaweza kupitishwa kupitia nodi kadhaa. Ugatuaji wa nodi za RPC unaweza kupunguzwa kwa urahisi, na kama matokeo ya hii, data inaweza kupitishwa kupitia seva nyingi zinazoongeza muda wa kusubiri.


  1. Usalama : kwa kuwa nodi zinasimamiwa na vyombo tofauti, nodi haziwezi kulindwa kwa usawa.


  1. Makubaliano Miongoni mwa Nodi : kuhakikisha data thabiti na ya kuaminika inaweza kuwa changamoto. Taratibu zinahitaji kuwapo ili kugundua na kupunguza nodi hasidi/hitilafu.


Mifano ya nodi za RPC zilizogatuliwa ni pamoja na:


dRPC, mtandao wa Pocket, na Ankr

Mbinu Bora za Kuepuka Hatari ya Kuweka Kati katika Maendeleo ya dApp

  1. Mseto wa Watoa Nodi

Kwa uteuzi wa watoa huduma wa nodi za RPC zilizogatuliwa kama vile dRPC, unaweza kuepuka hatari za uwekaji kati. Watoa huduma wa RPC waliogatuliwa wana mifumo iliyopo ili kuhakikisha nodi hufanya kazi kama vipengele vinavyohitajika kama vile visawazishaji vya mizigo, ufuatiliaji wa watoa huduma wa nodi na motisha kwa watendaji wazuri.


Kwa mfano, dRPC hukupa ufikiaji wa dashibodi kwa ajili ya kufuatilia mseto wa miundombinu ya nodi zako. Ingawa huna udhibiti wa moja kwa moja juu ya vifundo unavyotumia na jinsi ambavyo vimegatuliwa, dashibodi hukuruhusu kuona jinsi nodi zilivyogawanywa.


faharasa ya ugatuaji kwenye dashibodi ya dRPC


Uchunguzi wa picha hapo juu ulionyesha kuwa muunganisho umegawanywa kati ya watoa huduma wanne tofauti wa nodi za RPC ( Besked, drpc-free, drpc-public-multiregion, p2p-validator-optimism-free ). Fahirisi ya ugatuaji ya 0.563 ilionyesha idadi jumuishi ya kiwango cha ugatuaji huku "moja" ikiwa ndiyo iliyogatuliwa zaidi na "sifuri" ikiwa ya kati zaidi.


  1. Ufuatiliaji na Kusimamia Afya ya Njia

Wasanidi programu wanapaswa kuwa na uwezo wa kufuatilia nodi za RPC zinazotumiwa na dApp yao. Hii inahakikisha kutegemewa kwa dApp. Ingawa huwezi kudhibiti jinsi watoa huduma wa RPC wanavyosimamia mifumo yao, watoa huduma wa RPC waliogatuliwa kama vile dRPC wana mifumo iliyopo ya kufuatilia watoa huduma wa nodi za RPC.


Dashibodi ya SaaS ya dRPC inakupa ufikiaji wa uchanganuzi wa kina ili kufuatilia jinsi dApp yako inavyoingiliana na miundombinu. Katika dashibodi ya dRPC, kwa mfano, unaweza kufuatilia jumla ya idadi ya maombi yaliyotolewa na dApp yako kwa siku zilizochaguliwa, kufuatilia ugatuaji wa nodi za RPC, na kuomba usambazaji kulingana na ufunguo wa API. Unaweza hata kupata kumbukumbu za makosa kutoka kwa dashibodi.


Kando na dashibodi ya uchanganuzi ya dRPC, dRPC ina utaratibu wa nyuma wa kufuatilia watoa huduma wa nodi na kuwazuia wasifanye uhuni. Soma zaidi juu ya mifumo hii ya nyuma hapa.

Hitimisho

Nodi za RPC zina jukumu kubwa katika kuwezesha mawasiliano kati ya programu iliyogatuliwa na blockchain. Hata hivyo, uwekaji kati wa RPCs unaleta hatari kubwa kwa dApp yako na mtandao wa blockchain kwa ujumla. Kama inavyoonekana katika mapungufu yaliyotangulia kutoka kwa tafiti za kesi zilizojadiliwa hapo juu, kutegemea watoa huduma wa RPC wa kati huleta hatari ya kutofaulu na kunaweza kusababisha usumbufu mkubwa wa huduma ya huduma za web3.


Watengenezaji hawana njia mbadala. RPC zinazojipangisha na zilizogatuliwa hutoa masuluhisho ya kuaminika ambayo yanaweza kusaidia kuunda programu zinazostahimili. Kwa kukumbatia RPC zilizogatuliwa kama vile dRPC , wasanidi programu wanaweza kupunguza hatari ya kuwekwa kati na kuunda programu zenye nguvu, zinazostahimili udhibiti, zinazostahimili udhibiti na zilizolindwa.