{"id":36157,"date":"2019-10-31T22:09:55","date_gmt":"2019-10-31T19:09:55","guid":{"rendered":"https:\/\/prohoster.info\/blog\/skolko-tps-v-vashem-blokchejne\/"},"modified":"2019-10-31T22:09:55","modified_gmt":"2019-10-31T19:09:55","slug":"skolko-tps-v-vashem-blokchejne","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/skolko-tps-v-vashem-blokchejne","title":{"rendered":"H\u00e1ny TPS van a blokkl\u00e1nc\u00e1ban?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>B\u00e1rmely elosztott rendszerrel kapcsolatos leggyakoribb k\u00e9rd\u00e9s a nem technikai szakemberek r\u00e9sz\u00e9r\u0151l az, hogy \u201emennyi tps van a blokkl\u00e1nc\u00e1ban?\u201d. Azonban a v\u00e1laszban megnevezett sz\u00e1m \u00e1ltal\u00e1ban alig \u00e1ll kapcsolatban azzal, amit a k\u00e9rdez\u0151 hallani szeretne. Val\u00f3j\u00e1ban azt akarta k\u00e9rdezni, hogy \u201emegfelel-e a blokkl\u00e1nca az \u00fczleti k\u00f6vetelm\u00e9nyeimnek?\u201d, \u00e9s ezek a k\u00f6vetelm\u00e9nyek nem egyetlen sz\u00e1mot jelentenek, hanem sz\u00e1mos felt\u00e9telt \u2014 ide tartozik a h\u00e1l\u00f3zat megb\u00edzhat\u00f3s\u00e1ga, a v\u00e9glegess\u00e9g k\u00f6vetelm\u00e9nyei, a tranzakci\u00f3k m\u00e9rete, t\u00edpusa \u00e9s sok egy\u00e9b param\u00e9ter. \u00cdgy a \u201emennyi tps\u201d k\u00e9rd\u00e9sre adott v\u00e1lasz val\u00f3sz\u00edn\u0171leg nem lesz egyszer\u0171, \u00e9s szinte soha nem lesz teljes. Az elosztott rendszer, amely tucatnyi \u00e9s sz\u00e1znyi csom\u00f3ponttal bonyolult sz\u00e1m\u00edt\u00e1sokat v\u00e9gez, rengeteg k\u00fcl\u00f6nb\u00f6z\u0151 \u00e1llapotban lehet, amelyek a h\u00e1l\u00f3zat \u00e1llapot\u00e1val, a blokkl\u00e1nc tartalm\u00e1val, technikai hib\u00e1kkal, gazdas\u00e1gi probl\u00e9m\u00e1kkal, t\u00e1mad\u00e1sokkal \u00e9s sok egy\u00e9b okkal kapcsolatosak. Azok a l\u00e9p\u00e9sek, ahol teljes\u00edtm\u00e9nyprobl\u00e9m\u00e1k l\u00e9phetnek fel, elt\u00e9rnek a hagyom\u00e1nyos szolg\u00e1ltat\u00e1sokt\u00f3l, \u00e9s a blokkl\u00e1nc-h\u00e1l\u00f3zat szervere egy h\u00e1l\u00f3zati szolg\u00e1ltat\u00e1s, amely \u00f6tv\u00f6zi az adatb\u00e1zis, a webkiszolg\u00e1l\u00f3 \u00e9s a torrent kliens funkci\u00f3it, ami rendk\u00edv\u00fcl \u00f6sszetett terhel\u00e9si profilt jelent minden alkot\u00f3elem, bele\u00e9rtve a processzort, a mem\u00f3ri\u00e1t, a h\u00e1l\u00f3zatot \u00e9s a t\u00e1rol\u00e1st.<\/p>\n<p><\/p>\n<p>\u00dagy alakult, hogy a decentraliz\u00e1lt h\u00e1l\u00f3zatok \u00e9s blokkl\u00e1ncok meglehet\u0151sen specifikus \u00e9s szokatlan szoftverek a k\u00f6zpontos\u00edtott szoftverek fejleszt\u0151i sz\u00e1m\u00e1ra. Ez\u00e9rt szeretn\u00e9m bemutatni a decentraliz\u00e1lt h\u00e1l\u00f3zatok teljes\u00edtm\u00e9ny\u00e9vel \u00e9s stabilit\u00e1s\u00e1val kapcsolatos fontos szempontokat, az azok m\u00e9r\u00e9s\u00e9re \u00e9s a sz\u0171k keresztmetszetek felder\u00edt\u00e9s\u00e9re tett megk\u00f6zel\u00edt\u00e9seket. Megvizsg\u00e1ljuk a teljes\u00edtm\u00e9nnyel kapcsolatos k\u00fcl\u00f6nb\u00f6z\u0151 probl\u00e9m\u00e1kat, amelyek korl\u00e1tozz\u00e1k a blokkl\u00e1ncok felhaszn\u00e1l\u00f3k sz\u00e1m\u00e1ra t\u00f6rt\u00e9n\u0151 szolg\u00e1ltat\u00e1s\u00e1nak sebess\u00e9g\u00e9t, \u00e9s kiemelj\u00fck azokat a jellemz\u0151ket, amelyek e t\u00edpus\u00fa szoftverekre jellemz\u0151ek.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"etapy-zaprosa-servisa-klientom-blokcheyna\">A blokkl\u00e1nc \u00fcgyf\u00e9l \u00e1ltal ind\u00edtott szolg\u00e1ltat\u00e1s k\u00e9relm\u00e9nek l\u00e9p\u00e9sei<\/h2>\n<p><\/p>\n<p>Ahhoz, hogy \u0151szint\u00e9n besz\u00e9lj\u00fcnk b\u00e1rmilyen bonyolultabb szolg\u00e1ltat\u00e1s min\u0151s\u00e9g\u00e9r\u0151l, figyelembe kell venni nemcsak az \u00e1tlagos \u00e9rt\u00e9keket, hanem a maxim\u00e1lis\/minim\u00e1lis, medi\u00e1n \u00e9s percentilis \u00e9rt\u00e9keket is. Elm\u00e9letileg lehet besz\u00e9lni 1000 tps-r\u0151l egy blokkl\u00e1ncban, de ha 900 tranzakci\u00f3 rendk\u00edv\u00fcl gyorsan teljes\u00fclt, m\u00edg 100 'megakadt' n\u00e9h\u00e1ny m\u00e1sodpercig, akkor az \u00f6sszes tranzakci\u00f3ra vonatkoz\u00f3an \u00f6sszegy\u0171jt\u00f6tt \u00e1tlagid\u0151 nem felt\u00e9tlen\u00fcl korrekt metrika az \u00fcgyf\u00e9l sz\u00e1m\u00e1ra, aki n\u00e9h\u00e1ny m\u00e1sodperc alatt nem tudta befejezni az \u00fczletet. Az id\u0151beli 'lyukak', amelyeket konszenzusk\u00f6r\u00f6k kihagy\u00e1sa vagy a h\u00e1l\u00f3zat megoszl\u00e1sa okoz, jelent\u0151sen rontj\u00e1k a szolg\u00e1ltat\u00e1st, amely a tesztk\u00f6rnyezetekben kiv\u00e1l\u00f3 teljes\u00edtm\u00e9nyt mutatott.<\/p>\n<p><\/p>\n<p>Az ilyen sz\u0171k keresztmetszetek azonos\u00edt\u00e1s\u00e1hoz j\u00f3l kell \u00e9rteni azokat a l\u00e9p\u00e9seket, ahol a val\u00f3di blokkl\u00e1nc neh\u00e9zs\u00e9gekkel tal\u00e1lkozhat a felhaszn\u00e1l\u00f3k kiszolg\u00e1l\u00e1sa sor\u00e1n. \u00cdrjuk le a tranzakci\u00f3 sz\u00e1ll\u00edt\u00e1si \u00e9s feldolgoz\u00e1si ciklus\u00e1t, valamint a blokkl\u00e1nc \u00faj \u00e1llapot\u00e1nak megszerz\u00e9s\u00e9t, amelyb\u0151l a kliens megbizonyosodhat arr\u00f3l, hogy tranzakci\u00f3ja feldolgoz\u00e1sra ker\u00fclt \u00e9s figyelembe lett v\u00e9ve.<\/p>\n<p><\/p>\n<ol>\n<li>a tranzakci\u00f3 a kliensen form\u00e1l\u00f3dik<\/li>\n<li>a tranzakci\u00f3 a kliensen al\u00e1\u00edr\u00e1sra ker\u00fcl<\/li>\n<li>a kliens kiv\u00e1laszt egy nodot \u00e9s elk\u00fcldi neki a tranzakci\u00f3j\u00e1t<\/li>\n<li>a kliens feliratkozik a node state database friss\u00edt\u00e9seire, v\u00e1rva a tranzakci\u00f3ja v\u00e9grehajt\u00e1s\u00e1nak eredm\u00e9ny\u00e9t<\/li>\n<li>a node elterjeszti a tranzakci\u00f3t a p2p h\u00e1l\u00f3zaton<\/li>\n<li>t\u00f6bb vagy egy BP (blokktermel\u0151) feldolgozza a felhalmozott tranzakci\u00f3kat, friss\u00edtve a state database-t<\/li>\n<li>a BP \u00faj blokkot k\u00e9pez, feldolgozva a sz\u00fcks\u00e9ges sz\u00e1m\u00fa tranzakci\u00f3t<\/li>\n<li>a BP elterjeszti az \u00faj blokkot a p2p h\u00e1l\u00f3zaton<\/li>\n<li>az \u00faj blokk eljut a node-hoz, amelyhez a kliens fordul<\/li>\n<li>a node friss\u00edti a state database-t<\/li>\n<li>a node \u00e9szleli a kliensre vonatkoz\u00f3 friss\u00edt\u00e9st, \u00e9s \u00e9rtes\u00edt\u00e9st k\u00fcld a tranzakci\u00f3r\u00f3l<\/li>\n<\/ol>\n<p><\/p>\n<p>Most m\u00e1r n\u00e9zz\u00fck r\u00e9szletesebben ezeket a l\u00e9p\u00e9seket, \u00e9s \u00edrjuk le a potenci\u00e1lis teljes\u00edtm\u00e9nyprobl\u00e9m\u00e1kat minden egyes szakaszban. A centraliz\u00e1lt rendszerekt\u0151l elt\u00e9r\u0151en figyelembe vessz\u00fck a k\u00f3d futtat\u00e1s\u00e1t a h\u00e1l\u00f3zat klienseken is. El\u00e9g gyakran a tps m\u00e9r\u00e9s\u00e9n\u00e9l a tranzakci\u00f3k feldolgoz\u00e1si idej\u00e9t a node-okt\u00f3l, \u00e9s nem a kliensekt\u0151l gy\u0171jtik \u2014 ez nem teljesen fair. A kliens r\u00e9sz\u00e9r\u0151l l\u00e9nyegtelen, hogy mennyire gyorsan dolgozta fel a node a tranzakci\u00f3j\u00e1t; a legfontosabb sz\u00e1m\u00e1ra az az id\u0151pont, amikor a tranzakci\u00f3j\u00e1r\u00f3l sz\u00f3l\u00f3 megb\u00edzhat\u00f3 inform\u00e1ci\u00f3, amely a blokkl\u00e1ncba ker\u00fclt, el\u00e9rhet\u0151v\u00e9 v\u00e1lik sz\u00e1m\u00e1ra. Ez a m\u00e9r\u0151sz\u00e1m l\u00e9nyeg\u00e9ben a tranzakci\u00f3 v\u00e9grehajt\u00e1si ideje. Ez azt jelenti, hogy k\u00fcl\u00f6nb\u00f6z\u0151 kliensek, m\u00e9g akkor is, ha ugyanazt a tranzakci\u00f3t k\u00fcldik el, teljesen elt\u00e9r\u0151 id\u0151kben kaphatj\u00e1k azt, ami a csatorn\u00e1t\u00f3l, a forgalomt\u00f3l \u00e9s a node k\u00f6zels\u00e9g\u00e9t\u0151l stb. f\u00fcgg. \u00cdgy elengedhetetlen, hogy ezt az id\u0151t a klienseken m\u00e9rj\u00fck, mivel ez az a param\u00e9ter, amit optimaliz\u00e1lni kell.<\/p>\n<p><\/p>\n<h2 id=\"podgotovka-tranzakcii-na-storone-klienta\">A tranzakci\u00f3 el\u0151k\u00e9sz\u00edt\u00e9se a kliens oldal\u00e1n<\/h2>\n<p><\/p>\n<p>Kezdj\u00fck az els\u0151 k\u00e9t ponttal: a tranzakci\u00f3t a kliens \u00e1ll\u00edtja \u00f6ssze \u00e9s \u00edrja al\u00e1. Furcs\u00e1n hangzik, de ez is lehet a blokkl\u00e1nc teljes\u00edtm\u00e9ny\u00e9nek sz\u0171k keresztmetszete a kliens szempontj\u00e1b\u00f3l. Ez szokatlan a centraliz\u00e1lt szolg\u00e1ltat\u00e1sok sz\u00e1m\u00e1ra, ahol minden sz\u00e1m\u00edt\u00e1st \u00e9s adatkezel\u00e9st maguk v\u00e9geznek, m\u00edg a kliens csup\u00e1n egy r\u00f6vid k\u00e9r\u00e9st k\u00e9sz\u00edt el\u0151, ami k\u00e9pes egy nagy adat- vagy sz\u00e1m\u00edt\u00e1si mennyis\u00e9get k\u00e9rni, \u00e9s a k\u00e9sz eredm\u00e9nyt kapja meg. A blokkl\u00e1ncokban a kliens k\u00f3d egyre er\u0151sebb\u00e9 v\u00e1lik, m\u00edg a blokkl\u00e1nc mag egyre k\u00f6nnyebb\u00e9, a hatalmas sz\u00e1m\u00edt\u00e1si feladatokat pedig a kliens szoftvernek szokt\u00e1k \u00e1tadni. A blokkl\u00e1ncokban l\u00e9teznek olyan kliensek, amelyek egy tranzakci\u00f3t meglehet\u0151sen hossz\u00fa ideig k\u00e9pesek el\u0151k\u00e9sz\u00edteni (k\u00fcl\u00f6nb\u00f6z\u0151 merkle proof-okr\u00f3l, succinct proof-okr\u00f3l, threshold al\u00e1\u00edr\u00e1sokr\u00f3l \u00e9s egy\u00e9b bonyolult m\u0171veletekr\u0151l a kliens oldal\u00e1n van sz\u00f3). Egy j\u00f3 p\u00e9lda a k\u00f6nny\u0171 on-chain ellen\u0151rz\u00e9sre \u00e9s a tranzakci\u00f3 neh\u00e9z el\u0151k\u00e9sz\u00edt\u00e9s\u00e9re a kliensek r\u00e9sz\u00e9r\u0151l a Merkle-f\u00e1n alapul\u00f3 list\u00e1hoz val\u00f3 tartoz\u00e1s bizony\u00edt\u00e1sa. <noindex><a rel=\"nofollow\" href=\"https:\/\/hackernoon.com\/evolution-of-airdrop-from-common-spam-to-the-merkle-tree-30caa2344170\">cikk<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Ne felejts\u00fck el, hogy az \u00fcgyf\u00e9lk\u00f3d nem csup\u00e1n tranzakci\u00f3kat k\u00fcld a blokkl\u00e1ncra, hanem el\u0151sz\u00f6r lek\u00e9ri a blokkl\u00e1nc \u00e1llapot\u00e1t - ez a tev\u00e9kenys\u00e9g hat\u00e1ssal lehet a h\u00e1l\u00f3zat terhel\u00e9s\u00e9re \u00e9s a blokkl\u00e1nc csom\u00f3pontokra. Ez\u00e9rt, amikor m\u00e9r\u00e9seket v\u00e9gz\u00fcnk, hasznos, ha a lehet\u0151 legteljesebb m\u00e9rt\u00e9kben modellezz\u00fck az \u00fcgyf\u00e9lk\u00f3d viselked\u00e9s\u00e9t. M\u00e9g akkor is, ha a blokkl\u00e1ncunkban szokv\u00e1nyos, k\u00f6nny\u0171 kliensek vannak, akik egyszer\u0171 digit\u00e1lis al\u00e1\u00edr\u00e1st helyeznek el egy egyszer\u0171 tranzakci\u00f3n\u00e1l valamilyen eszk\u00f6z \u00e1tvitel\u00e9re, az \u00fcgyf\u00e9len v\u00e9gzett sz\u00e1m\u00edt\u00e1sok mennyis\u00e9ge \u00e9vr\u0151l \u00e9vre n\u00f6vekszik, a kriptogr\u00e1fiai algoritmusok er\u0151s\u00f6dnek, \u00e9s ez a feldolgoz\u00e1si r\u00e9sz a j\u00f6v\u0151ben jelent\u0151s sz\u0171k keresztmetszett\u00e9 v\u00e1lhat. Legy\u00fcnk \u00f3vatosak, \u00e9s ne hagyjuk figyelmen k\u00edv\u00fcl az olyan helyzeteket, amikor egy 3,5 m\u00e1sodpercig tart\u00f3 tranzakci\u00f3 2,5 m\u00e1sodpercet vesz ig\u00e9nybe a tranzakci\u00f3 el\u0151k\u00e9sz\u00edt\u00e9s\u00e9re \u00e9s al\u00e1\u00edr\u00e1s\u00e1ra, \u00e9s 1,0 m\u00e1sodpercet az elk\u00fcld\u00e9s\u00e9re a h\u00e1l\u00f3zatba \u00e9s a v\u00e1laszra val\u00f3 v\u00e1rakoz\u00e1sra. A potenci\u00e1lis sz\u0171k keresztmetszetek kock\u00e1zatainak felm\u00e9r\u00e9se \u00e9rdek\u00e9ben metrik\u00e1kat kell gy\u0171jteni az \u00fcgyf\u00e9lsz\u00e1m\u00edt\u00f3g\u00e9pekr\u0151l, nem csup\u00e1n a blokkl\u00e1nc csom\u00f3pontokr\u00f3l.<\/p>\n<p><\/p>\n<h2 id=\"otpravka-tranzakcii-i-monitoring-ee-statusa\">Tranzakci\u00f3 k\u00fcld\u00e9se \u00e9s \u00e1llapot\u00e1nak nyomon k\u00f6vet\u00e9se<\/h2>\n<p><\/p>\n<p>A k\u00f6vetkez\u0151 l\u00e9p\u00e9s a tranzakci\u00f3 elk\u00fcld\u00e9se a v\u00e1lasztott blokkl\u00e1nc csom\u00f3pontra, valamint a tranzakci\u00f3s medenc\u00e9be val\u00f3 befogad\u00e1s\u00e1nak st\u00e1tusz\u00e1nak megszerz\u00e9se. Ez a l\u00e9p\u00e9s hasonl\u00f3 egy szokv\u00e1nyos adatb\u00e1zis-lek\u00e9rdez\u00e9shez; a csom\u00f3pontnak r\u00f6gz\u00edtenie kell a tranzakci\u00f3t a medenc\u00e9ben, \u00e9s el kell kezdenie terjeszteni az inform\u00e1ci\u00f3t a p2p h\u00e1l\u00f3zaton. A teljes\u00edtm\u00e9ny\u00e9rt\u00e9kel\u00e9si megk\u00f6zel\u00edt\u00e9s itt hasonl\u00f3 a hagyom\u00e1nyos mikroszolg\u00e1ltat\u00e1sok Web API m\u0171k\u00f6d\u00e9s\u00e9nek \u00e9rt\u00e9kel\u00e9s\u00e9hez, r\u00e1ad\u00e1sul maguk a tranzakci\u00f3k a blokkl\u00e1ncokban friss\u00edthet\u0151k, akt\u00edvan v\u00e1ltoztathatj\u00e1k st\u00e1tuszukat. \u00c1ltal\u00e1noss\u00e1gban elmondhat\u00f3, hogy a tranzakci\u00f3 inform\u00e1ci\u00f3j\u00e1nak friss\u00edt\u00e9se egyes blokkl\u00e1ncokban t\u00f6bbsz\u00f6r is bek\u00f6vetkezhet, p\u00e9ld\u00e1ul l\u00e1nc forkok k\u00f6z\u00f6tti v\u00e1lt\u00e1sok eset\u00e9n, vagy amikor a BP-k a tranzakci\u00f3 blokkba val\u00f3 beilleszt\u00e9s\u00e9nek sz\u00e1nd\u00e9k\u00e1r\u00f3l t\u00e1j\u00e9koztatnak. A medenc\u00e9re \u00e9s az abban tal\u00e1lhat\u00f3 tranzakci\u00f3k sz\u00e1m\u00e1ra vonatkoz\u00f3 korl\u00e1toz\u00e1sok befoly\u00e1solhatj\u00e1k a blokkl\u00e1nc teljes\u00edtm\u00e9ny\u00e9t. Ha a tranzakci\u00f3s medence el\u00e9ri a maxim\u00e1lis m\u00e9ret\u00e9t, vagy ha nem f\u00e9r el a mem\u00f3ri\u00e1ban - a h\u00e1l\u00f3zat teljes\u00edtm\u00e9nye dr\u00e1maian cs\u00f6kkenhet. A blokkl\u00e1ncok nem rendelkeznek k\u00f6zpontos\u00edtott v\u00e9delmi eszk\u00f6z\u00f6kkel a szem\u00e9t\u00fczenetek \u00e1raml\u00e1sa ellen, \u00e9s ha a blokkl\u00e1nc nagy volumennel \u00e9s alacsony d\u00edjakkal t\u00e1mogatja a tranzakci\u00f3kat, az a tranzakci\u00f3s medence t\u00falcsordul\u00e1s\u00e1hoz vezethet - ez egy \u00fajabb potenci\u00e1lis teljes\u00edtm\u00e9nybeli sz\u0171k keresztmetszet.<\/p>\n<p><\/p>\n<p>A blokkl\u00e1ncokban az \u00fcgyf\u00e9l egy sz\u00e1m\u00e1ra tetsz\u0151 blokkl\u00e1nc csom\u00f3pontnak k\u00fcldi el a tranzakci\u00f3t, a tranzakci\u00f3 hash-e \u00e1ltal\u00e1ban m\u00e1r az \u00fcgyf\u00e9l sz\u00e1m\u00e1ra ismert a k\u00fcld\u00e9s el\u0151tt, \u00edgy mind\u00f6ssze annyira van sz\u00fcks\u00e9ge, hogy kapcsolatot l\u00e9tes\u00edt, \u00e9s a tov\u00e1bb\u00edt\u00e1st k\u00f6vet\u0151en v\u00e1rja, hogy a blokkl\u00e1nc megv\u00e1ltoztassa \u00e1llapot\u00e1t, bele\u00e9rtve tranzakci\u00f3j\u00e1t. \u00c9rdemes megjegyezni, hogy a 'tps' m\u00e9r\u00e9se sor\u00e1n teljesen elt\u00e9r\u0151 eredm\u00e9nyeket kaphatunk a blokkl\u00e1nc csom\u00f3ponthoz val\u00f3 csatlakoz\u00e1s k\u00fcl\u00f6nb\u00f6z\u0151 m\u00f3djai eset\u00e9n. Ez lehet hagyom\u00e1nyos HTTP RPC vagy WebSocket, amely lehet\u0151v\u00e9 teszi a 'subscribe' minta megval\u00f3s\u00edt\u00e1s\u00e1t. A m\u00e1sodik esetben az \u00fcgyf\u00e9l kor\u00e1bban \u00e9rtes\u00edt\u00e9st kap, \u00e9s a csom\u00f3pont kevesebb er\u0151forr\u00e1st (f\u0151k\u00e9nt mem\u00f3ri\u00e1t \u00e9s forgalmat) haszn\u00e1l a tranzakci\u00f3 \u00e1llapot\u00e1r\u00f3l sz\u00f3l\u00f3 v\u00e1laszokhoz. Teh\u00e1t a 'tps' m\u00e9r\u00e9s\u00e9n\u00e9l figyelembe kell venni az \u00fcgyfelek csom\u00f3pontokhoz val\u00f3 csatlakoz\u00e1s m\u00f3dj\u00e1t. Ez\u00e9rt a blokkl\u00e1nc benchmarkj\u00e1nak k\u00e9pesnek kell lennie az \u00fcgyfelek WebSocket \u00e9s HTTP RPC k\u00e9r\u00e9sekkel t\u00f6rt\u00e9n\u0151 emul\u00e1l\u00e1s\u00e1ra, olyan ar\u00e1nyokban, amelyek megfelelnek a val\u00f3s h\u00e1l\u00f3zatoknak, valamint a tranzakci\u00f3k jelleg\u00e9nek \u00e9s m\u00e9ret\u00e9nek megv\u00e1ltoztat\u00e1s\u00e1ra.<\/p>\n<p><\/p>\n<p>A bottleneck megjelen\u00e9s\u00e9nek kock\u00e1zat\u00e1nak \u00e9rt\u00e9kel\u00e9s\u00e9hez \u00fcgyelni kell arra is, hogy m\u00e9reteket gy\u0171jts\u00fcnk az \u00fcgyf\u00e9lg\u00e9pekr\u0151l, nem csup\u00e1n a blokkl\u00e1nc csom\u00f3pontokr\u00f3l.<\/p>\n<p><\/p>\n<h2 id=\"peredacha-tranzakciy-i-blokov-po-p2p-seti\">Tranzakci\u00f3k \u00e9s blokkok tov\u00e1bb\u00edt\u00e1sa p2p h\u00e1l\u00f3zaton<\/h2>\n<p><\/p>\n<p>A blokkl\u00e1ncokban a tranzakci\u00f3k \u00e9s blokkok k\u00fcld\u00e9s\u00e9re a peer-to-peer (p2p) h\u00e1l\u00f3zatot haszn\u00e1lj\u00e1k a r\u00e9sztvev\u0151k k\u00f6z\u00f6tt. A tranzakci\u00f3k egy csom\u00f3pontt\u00f3l elindulva terjednek a h\u00e1l\u00f3zaton, am\u00edg el nem \u00e9rik a peer-eket, a blokkgy\u00e1rt\u00f3kat, akik a tranzakci\u00f3kat blokkokba csomagolj\u00e1k, \u00e9s a p2p h\u00e1l\u00f3zaton kereszt\u00fcl \u00faj blokkokat terjesztenek a h\u00e1l\u00f3zat \u00f6sszes csom\u00f3pontj\u00e1n. A legt\u00f6bb modern p2p h\u00e1l\u00f3zat alapja a Kademlia protokoll k\u00fcl\u00f6nb\u00f6z\u0151 m\u00f3dos\u00edt\u00e1sai. <noindex><a rel=\"nofollow\" href=\"https:\/\/cardanodocs.com\/technical\/protocols\/p2p\/\">\u00cdme<\/a><\/noindex> j\u00f3 r\u00f6vid \u00e1ttekint\u00e9s err\u0151l a protokollr\u00f3l, \u00e9s <noindex><a rel=\"nofollow\" href=\"https:\/\/web.njit.edu\/~dingxn\/papers\/BT-JSAC.pdf\">itt van<\/a><\/noindex> \u2014 egy cikk k\u00fcl\u00f6nb\u00f6z\u0151 m\u00e9r\u00e9sekkel a BitTorrent h\u00e1l\u00f3zaton, amelyb\u0151l meg\u00e9rthetj\u00fck, hogy ez a fajta h\u00e1l\u00f3zat bonyolultabb \u00e9s kev\u00e9sb\u00e9 kisz\u00e1m\u00edthat\u00f3, mint a szigor\u00faan konfigur\u00e1lt k\u00f6zponti szolg\u00e1ltat\u00e1s h\u00e1l\u00f3zata. Ezen k\u00edv\u00fcl, <noindex><a rel=\"nofollow\" href=\"https:\/\/zanema.com\/papers\/imc18_ethpeers.pdf\">itt van<\/a><\/noindex> cikk k\u00fcl\u00f6nb\u00f6z\u0151 \u00e9rdekes m\u00e9r\u00e9sek Ethereum nodok sz\u00e1m\u00e1ra.<\/p>\n<p><\/p>\n<p>R\u00f6viden, ezekben a h\u00e1l\u00f3zatokban minden peer saj\u00e1t dinamikus list\u00e1j\u00e1t tartja fenn a t\u00f6bbi peer-r\u0151l, akikt\u0151l inform\u00e1ci\u00f3s blokkokat k\u00e9rdezhet. Amikor egy k\u00e9r\u00e9s \u00e9rkezik, a peer vagy \u00e1tadja a sz\u00fcks\u00e9ges inform\u00e1ci\u00f3t, vagy a list\u00e1r\u00f3l egy v\u00e9letlenszer\u0171 peer-nek tov\u00e1bb\u00edtja a k\u00e9r\u00e9st, majd a v\u00e1laszt visszak\u00fcldi a k\u00e9rdez\u0151nek, \u00e9s egy ideig cache-eli az inform\u00e1ci\u00f3t, hogy legk\u00f6zelebb gyorsabban tudja \u00e1tadni. \u00cdgy a n\u00e9pszer\u0171 inform\u00e1ci\u00f3k sz\u00e1mos cache-ben fellelhet\u0151k sok peer-n\u00e9l, m\u00edg a n\u00e9pszer\u0171tlenek fokozatosan elt\u0171nnek. A peer-ek nyomon k\u00f6vetik, hogy ki mennyi inform\u00e1ci\u00f3t adott \u00e1t, \u00e9s a h\u00e1l\u00f3zat pr\u00f3b\u00e1lja \u00f6szt\u00f6n\u00f6zni az akt\u00edv megoszt\u00f3kat, n\u00f6velve a rangsorukat \u00e9s biztos\u00edtva sz\u00e1mukra a magasabb szint\u0171 szolg\u00e1ltat\u00e1st, automatikusan kiszor\u00edtva a nem akt\u00edv r\u00e9sztvev\u0151ket a peer-list\u00e1kb\u00f3l.<\/p>\n<p><\/p>\n<p>Most importantly, the transaction now needs to be propagated across the network so that block producers can see it and include it in a block. The node actively \"distributes\" the new transaction to all interested parties and listens to the network, waiting for the block index where the needed transaction will appear to notify the waiting client. The time it takes for the network to exchange information about new transactions and blocks in P2P networks depends on a large number of factors: the number of honest, working nodes nearby (from a network perspective), the 'warmth' of those nodes' caches, the size of the blocks and transactions, the nature of changes, the network's geography, the number of nodes, and many other factors. Complex measurements of performance metrics in such networks are challenging; it is necessary to evaluate the response times both from clients and peers (blockchain nodes) simultaneously. Issues in any P2P mechanism, incorrect eviction and caching of data, inefficient management of active peer lists, and many other factors can lead to delays that affect the efficiency of the entire network, and this bottleneck is the most difficult to analyze, test, and interpret the results.<\/p>\n<p><\/p>\n<h2 id=\"processing-cepochki-blokov-i-obnovlenie-state-database\">A blokkl\u00e1nc feldolgoz\u00e1sa \u00e9s az \u00e1llapotadatb\u00e1zis friss\u00edt\u00e9se<\/h2>\n<p><\/p>\n<p>The most important aspect of blockchain operation is the consensus algorithm, its application to new blocks received from the network, and the processing of transactions with the recording of results in the state database. Adding a new block to the chain and then selecting the main chain must work as quickly as possible. However, in real life, 'must' does not mean 'works', and one can imagine a situation where two long competing chains constantly switch between each other, altering the metadata of thousands of transactions in the pool with every switch and causing continuous rollbacks of the state database. This stage, in terms of identifying the bottleneck, is simpler than the network P2P layer, as the execution of transactions and the consensus algorithm are strictly deterministic, making it easier to measure anything here.<br \/>\nFontos, hogy ne keverj\u00fck \u00f6ssze a teljes\u00edtm\u00e9ny v\u00e9letlenszer\u0171 roml\u00e1s\u00e1t ezen a szakaszon a h\u00e1l\u00f3zati probl\u00e9m\u00e1kkal \u2014 a csom\u00f3pontok lassabban adj\u00e1k \u00e1t a blokkokat \u00e9s az alapl\u00e1nccal kapcsolatos inform\u00e1ci\u00f3t, ami egy k\u00fcls\u0151 kliens sz\u00e1m\u00e1ra lass\u00fa h\u00e1l\u00f3zatnak t\u0171nhet, holott a probl\u00e9ma eg\u00e9szen m\u00e1shol rejlik.<\/p>\n<p><\/p>\n<p>A teljes\u00edtm\u00e9ny optimaliz\u00e1l\u00e1sa \u00e9rdek\u00e9ben ezen a szakaszon hasznos gy\u0171jteni \u00e9s figyelemmel k\u00eds\u00e9rni a csom\u00f3pontokb\u00f3l sz\u00e1rmaz\u00f3 metrik\u00e1kat, \u00e9s ezeket belefoglalni a state-database friss\u00edt\u00e9s\u00e9vel kapcsolatosakat is: a csom\u00f3ponton feldolgozott blokkok sz\u00e1ma, azok m\u00e9rete, a tranzakci\u00f3k sz\u00e1ma, a l\u00e1ncv\u00e1ltoz\u00e1sok sz\u00e1ma, a nem \u00e9rv\u00e9nyes blokkok sz\u00e1ma, a virtu\u00e1lis g\u00e9p m\u0171k\u00f6d\u00e9si ideje, az adatok r\u00f6gz\u00edt\u00e9s\u00e9nek id\u0151tartama, stb. Ez lehet\u0151v\u00e9 teszi a h\u00e1l\u00f3zati probl\u00e9m\u00e1k \u00e9s a l\u00e1ncfeldolgoz\u00e1si algoritmusok hib\u00e1inak \u00f6sszekever\u00e9s\u00e9nek elker\u00fcl\u00e9s\u00e9t.<\/p>\n<p><\/p>\n<p>A tranzakci\u00f3kat feldolgoz\u00f3 virtu\u00e1lis g\u00e9p hasznos inform\u00e1ci\u00f3forr\u00e1st jelenthet a blokkl\u00e1nc m\u0171k\u00f6d\u00e9s\u00e9nek optimaliz\u00e1l\u00e1s\u00e1hoz. A mem\u00f3riaallok\u00e1ci\u00f3k mennyis\u00e9ge, a read\/write utas\u00edt\u00e1sok sz\u00e1ma \u00e9s egy\u00e9b metrik\u00e1k, amelyek a szerz\u0151d\u00e9sek k\u00f3dj\u00e1nak v\u00e9grehajt\u00e1s\u00e1nak hat\u00e9konys\u00e1g\u00e1ra vonatkoznak, sok hasznos inform\u00e1ci\u00f3t ny\u00fajthatnak a fejleszt\u0151k sz\u00e1m\u00e1ra. Ugyanakkor a smart contractok programok, \u00edgy elm\u00e9letileg b\u00e1rmilyen er\u0151forr\u00e1st felhaszn\u00e1lhatnak: cpu\/mem\u00f3ria\/h\u00e1l\u00f3zat\/t\u00e1rhely, ez\u00e9rt a tranzakci\u00f3k feldolgoz\u00e1sa egy meglehet\u0151sen bizonytalan szakasz, amely r\u00e1ad\u00e1sul jelent\u0151sen v\u00e1ltozik a verzi\u00f3k k\u00f6z\u00f6tti v\u00e1lt\u00e1skor \u00e9s a szerz\u0151d\u00e9sek k\u00f3dj\u00e1nak m\u00f3dos\u00edt\u00e1sakor. Ez\u00e9rt a tranzakci\u00f3k feldolgoz\u00e1s\u00e1ra vonatkoz\u00f3 metrik\u00e1k is sz\u00fcks\u00e9gesek a blokkl\u00e1nc teljes\u00edtm\u00e9ny\u00e9nek hat\u00e9kony optimaliz\u00e1l\u00e1s\u00e1hoz.<\/p>\n<p><\/p>\n<h2 id=\"poluchenie-klientom-uvedomleniya-o-vklyuchenii-tranzakcii-v-blokcheyn\">\u00dcgyf\u00e9l \u00e9rtes\u00edt\u00e9se a tranzakci\u00f3 blokkl\u00e1ncra val\u00f3 aktiv\u00e1l\u00e1s\u00e1r\u00f3l<\/h2>\n<p><\/p>\n<p>Ez a l\u00e9p\u00e9s a blockchain szolg\u00e1ltat\u00e1s\u00e1nak megszerz\u00e9s\u00e9nek utols\u00f3 f\u00e1zisa a kliens sz\u00e1m\u00e1ra, \u00f6sszehasonl\u00edtva a t\u00f6bbi f\u00e1zissal, itt nincsenek nagyobb k\u00f6lts\u00e9gek, de m\u00e9g mindig figyelembe kell venni a kliens \u00e1ltal a node-t\u00f3l kaphat\u00f3 terjedelmes v\u00e1lasz lehet\u0151s\u00e9g\u00e9t (p\u00e9ld\u00e1ul okos szerz\u0151d\u00e9s, amely egy t\u00f6mb adatot ad vissza). B\u00e1rmilyen esetben ez a pillanat a legfontosabb annak, aki a k\u00e9rd\u00e9st tette fel: \u201emennyi TPS van az \u00d6n blockchain-j\u00e9ben?\u201d, mivel ebben a pillanatban r\u00f6gz\u00edti a szolg\u00e1ltat\u00e1s ig\u00e9nybev\u00e9tel\u00e9nek idej\u00e9t. <\/p>\n<p><\/p>\n<p>Ez a szakasz k\u00f6telez\u0151en tartalmazza a teljes id\u0151t, amelyet az \u00fcgyf\u00e9l a blokkl\u00e1nct\u00f3l val\u00f3 v\u00e1laszra val\u00f3 v\u00e1rakoz\u00e1sra ford\u00edtott, ezt az id\u0151t a felhaszn\u00e1l\u00f3 az alkalmaz\u00e1s\u00e1ban a meger\u0151s\u00edt\u00e9s v\u00e1rakoz\u00e1sak\u00e9nt fogja \u00e9rtelmezni, \u00e9s ennek optimaliz\u00e1l\u00e1sa a fejleszt\u0151k f\u0151 feladata.<\/p>\n<p><\/p>\n<h1 id=\"zaklyuchenie\">Z\u00e1r\u00e1s<\/h1>\n<p><\/p>\n<p>Ennek eredm\u00e9nyek\u00e9ppen le\u00edrhat\u00f3k a blokkl\u00e1ncokban v\u00e9grehajtott m\u0171veletek t\u00edpusai, \u00e9s ezek t\u00f6bb kateg\u00f3ri\u00e1ba sorolhat\u00f3k:<\/p>\n<p><\/p>\n<ol>\n<li>kriptogr\u00e1fiai konverzi\u00f3k, bizony\u00edt\u00e9kok k\u00e9sz\u00edt\u00e9se<\/li>\n<li>peer-to-peer h\u00e1l\u00f3zat\u00e9p\u00edt\u00e9s, tranzakci\u00f3k \u00e9s blokkok replik\u00e1ci\u00f3ja<\/li>\n<li>tranzakci\u00f3k feldolgoz\u00e1sa, okos szerz\u0151d\u00e9sek v\u00e9grehajt\u00e1sa<\/li>\n<li>v\u00e1ltoz\u00e1sok alkalmaz\u00e1sa a blokkl\u00e1ncra \u00e1llapot adatb\u00e1zisra, tranzakci\u00f3k \u00e9s blokkok adataik friss\u00edt\u00e9se<\/li>\n<li>csak olvashat\u00f3 lek\u00e9rdez\u00e9sek \u00e1llapot adatb\u00e1zisra, blokkl\u00e1nc csom\u00f3pont API, el\u0151fizet\u00e9si szolg\u00e1ltat\u00e1sok <\/li>\n<\/ol>\n<p><\/p>\n<p>\u00c1ltal\u00e1noss\u00e1gban elmondhat\u00f3, hogy a modern blokkl\u00e1ncok csom\u00f3pontjaira vonatkoz\u00f3 technikai k\u00f6vetelm\u00e9nyek rendk\u00edv\u00fcl szigor\u00faak \u2014 gyors CPU-k a kriptogr\u00e1fi\u00e1hoz, nagy mennyis\u00e9g\u0171 RAM a state database t\u00e1rol\u00e1s\u00e1hoz \u00e9s gyors el\u00e9r\u00e9s\u00e9hez, h\u00e1l\u00f3zati interakci\u00f3, amely sok p\u00e1rhuzamos kapcsolatra \u00e9p\u00edt, \u00e9s jelent\u0151s t\u00e1rhely. Ezek a magas k\u00f6vetelm\u00e9nyek \u00e9s a k\u00fcl\u00f6nb\u00f6z\u0151 t\u00edpus\u00fa m\u0171veletek b\u0151s\u00e9ge elker\u00fclhetetlen\u00fcl azt eredm\u00e9nyezi, hogy a csom\u00f3pontok er\u0151forr\u00e1sai nem elegend\u0151ek, \u00e9s ebben az esetben b\u00e1rmelyik fent eml\u00edtett l\u00e9p\u00e9s a h\u00e1l\u00f3zat teljes\u00edtm\u00e9ny\u00e9nek sz\u0171k keresztmetszet\u00e9v\u00e9 v\u00e1lhat.<\/p>\n<p><\/p>\n<p>A blockchainok fejleszt\u00e9se \u00e9s teljes\u00edtm\u00e9ny\u00e9nek \u00e9rt\u00e9kel\u00e9se sor\u00e1n figyelembe kell venni ezeket a szempontokat. Ehhez a h\u00e1l\u00f3zat klienseit\u0151l \u00e9s node-jait\u00f3l egyszerre kell gy\u0171jteni \u00e9s elemezni a metrik\u00e1kat, keresni a k\u00f6z\u00f6tt\u00fck l\u00e9v\u0151 korrel\u00e1ci\u00f3kat, \u00e9rt\u00e9kelni a szolg\u00e1ltat\u00e1sny\u00fajt\u00e1s idej\u00e9t a klienseknek, figyelembe venni az \u00f6sszes alapvet\u0151 er\u0151forr\u00e1st: CPU\/mem\u00f3ria\/h\u00e1l\u00f3zat\/t\u00e1rol\u00e1s, meg\u00e9rteni, hogyan haszn\u00e1lj\u00e1k \u0151ket \u00e9s hogyan hatnak egym\u00e1sra. Mindez rendk\u00edv\u00fcl h\u00e1l\u00e1tlan feladatt\u00e1 teszi a k\u00fcl\u00f6nb\u00f6z\u0151 blockchainok sebess\u00e9geinek \u00f6sszehasonl\u00edt\u00e1s\u00e1t \u201emennyi TPS\u201d-ben, mivel hatalmas mennyis\u00e9g\u0171 k\u00fcl\u00f6nb\u00f6z\u0151 konfigur\u00e1ci\u00f3 \u00e9s \u00e1llapot l\u00e9tezik. Nagy k\u00f6zpontos\u00edtott rendszerekben, sz\u00e1zsoros szerverklaszterekben ezek a probl\u00e9m\u00e1k is bonyolultak \u00e9s szint\u00e9n sokf\u00e9le metrika gy\u0171jt\u00e9s\u00e9t ig\u00e9nylik, de a blockchainok eset\u00e9ben, a p2p h\u00e1l\u00f3zatok, virtu\u00e1lis g\u00e9pek, szerz\u0151d\u00e9seket feldolgoz\u00f3 folyamatok \u00e9s a bels\u0151 gazdas\u00e1g miatt a szabads\u00e1gfokok sz\u00e1ma sokkal nagyobb, ami azt jelenti, hogy a tesztel\u00e9s m\u00e9g n\u00e9h\u00e1ny szervern\u00e9l is nem reprezentat\u00edv \u00e9s csak rendk\u00edv\u00fcl t\u00e1voli \u00e9rt\u00e9keket mutat, amelyek szinte semmilyen kapcsolatban nincsenek a val\u00f3s\u00e1ggal.<\/p>\n<p><\/p>\n<p>Ez\u00e9rt, amikor a blockchain magj\u00e1ban fejleszt\u00fcnk, a teljes\u00edtm\u00e9ny \u00e9rt\u00e9kel\u00e9s\u00e9hez \u00e9s a k\u00e9rd\u00e9s megv\u00e1laszol\u00e1s\u00e1hoz: \u201ejavult-e a m\u00falt id\u0151szakhoz k\u00e9pest\u201d egy viszonylag bonyolult szoftvert haszn\u00e1lunk, amely koordin\u00e1lja a blockchain ind\u00edt\u00e1s\u00e1t t\u00f6bb tucat node-dal, automatikus benchmark futtat\u00e1ssal \u00e9s metrik\u00e1k gy\u0171jt\u00e9s\u00e9vel; en\u00e9lk\u00fcl a inform\u00e1ci\u00f3 n\u00e9lk\u00fcl rendk\u00edv\u00fcl neh\u00e9z a t\u00f6bb r\u00e9sztvev\u0151s protokollok hib\u00e1it elh\u00e1r\u00edtani.<\/p>\n<p><\/p>\n<p>Teh\u00e1t, ha a k\u00e9rd\u00e9s az, \u201emennyi TPS van az \u00d6n blockchain-j\u00e9ben?\u201d, javasolja a besz\u00e9lget\u0151partner\u00e9nek, hogy igyon egy te\u00e1t, \u00e9s tiszt\u00e1zza, hogy k\u00e9szen \u00e1ll-e arra, hogy megismerje egy tucat grafikon \u00e9s meghallgassa a blockchainok teljes\u00edtm\u00e9nnyel kapcsolatos h\u00e1rom f\u0151 probl\u00e9m\u00e1j\u00e1t, valamint az \u00d6n megold\u00e1si javaslatait...<\/p>\n<p>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/459763\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041b\u044e\u0431\u0438\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c \u043e \u043b\u044e\u0431\u043e\u0439 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043e\u0442 \u043d\u0435\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0441\u0442\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u201c\u0421\u043a\u043e\u043b\u044c\u043a\u043e tps \u0432 \u0432\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435?\u201d. \u041e\u0434\u043d\u0430\u043a\u043e, \u043d\u0430\u0437\u0432\u0430\u043d\u043d\u043e\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442 \u0447\u0438\u0441\u043b\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u0438\u043c\u0435\u0435\u0442 \u043c\u0430\u043b\u043e \u043e\u0431\u0449\u0435\u0433\u043e \u0441 \u0442\u0435\u043c, \u0447\u0442\u043e \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u0443\u0441\u043b\u044b\u0448\u0430\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0448\u0430\u044e\u0449\u0438\u0439. \u041d\u0430 \u0434\u0435\u043b\u0435, \u043e\u043d \u0445\u043e\u0442\u0435\u043b \u0441\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u201c\u043f\u043e\u0434\u043e\u0439\u0434\u0435\u0442 \u043b\u0438 \u0432\u0430\u0448 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d \u043f\u043e\u0434 \u043c\u043e\u0438 \u0431\u0438\u0437\u043d\u0435\u0441 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u201d, \u0438 \u044d\u0442\u0438 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u2014 \u044d\u0442\u043e \u043d\u0435 \u043e\u0434\u043d\u043e \u0447\u0438\u0441\u043b\u043e, \u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36157","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041b\u044e\u0431\u0438\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c \u043e \u043b\u044e\u0431\u043e\u0439 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043e\u0442 \u043d\u0435\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0441\u0442\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u201c\u0421\u043a\u043e\u043b\u044c\u043a\u043e tps \u0432 \u0432\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435?\u201d.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/skolko-tps-v-vashem-blokchejne\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u043a\u043e\u043b\u044c\u043a\u043e TPS \u0432 \u0432\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041b\u044e\u0431\u0438\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c \u043e \u043b\u044e\u0431\u043e\u0439 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043e\u0442 \u043d\u0435\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0441\u0442\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u201c\u0421\u043a\u043e\u043b\u044c\u043a\u043e tps \u0432 \u0432\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435?\u201d.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/skolko-tps-v-vashem-blokchejne\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:09:55+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:09:55+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Mennyi TPS van a blokkl\u00e1ncodban? | ProHoster","description":"A nem technikai szakemberek kedvenc k\u00e9rd\u00e9se b\u00e1rmilyen elosztott rendszerrel kapcsolatban a \"Mennyi TPS van a blokkl\u00e1ncodban?\"","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/skolko-tps-v-vashem-blokchejne","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u043a\u043e\u043b\u044c\u043a\u043e TPS \u0432 \u0432\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435? | ProHoster","og:description":"\u041b\u044e\u0431\u0438\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c \u043e \u043b\u044e\u0431\u043e\u0439 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043e\u0442 \u043d\u0435\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0441\u0442\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u201c\u0421\u043a\u043e\u043b\u044c\u043a\u043e tps \u0432 \u0432\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435?\u201d.","og:url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/skolko-tps-v-vashem-blokchejne","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:09:55+00:00","article:modified_time":"2019-10-31T19:09:55+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36157","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 02:15:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:49:44","updated":"2026-01-22 02:15:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/36157","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=36157"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/36157\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=36157"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=36157"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=36157"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}