Quot spes sunt in blockchain?

Amata quaestio de aliqua systemate distributo ex persona non-technica est "Quot tps sunt in tuo clausura?" Numerus autem respondens plerumque parum convenit cum eo quod interrogantis audire vellet. Reapse quaerere voluit "sponsorium tuum apta negotia mea requisita", et hae necessitates non sunt unus numerus, sed multae conditiones - hic sunt retis culpa tolerantia, finalitas requisita, amplitudo, natura negotiorum et multi alii parametri. Respondetur ergo quaestioni "quot tps" inconveniens est simplex esse, et fere numquam completum. Ratio distributa cum decem vel centenis nodis calculis satis complexis faciendo potest esse in ingens numerus diversorum civitatum ad statum retis pertinentium, contenta impedimentorum, technicorum, defectuum oeconomicorum, impetus in retis et multae aliae rationes. . Gradus in quibus problemata perficienda possibilia sunt differre a servitiis traditis, et impedimentum retis serviens est servitium retis quod coniungit ad functionem database, servientis et torrentis clientis, quae facit eam valde implicatam in terminis oneris in omnibus subsystematibus. : processus, memoria, retis, repositio

Ita fit ut retiacula decentra et impedimenta sint admodum specifica et insolita programmata pro tincidunt software centralised. Quapropter magnas rationes extollere velim in reticulis faciendis et sustinendis decentralized, accedit ad metiendas et inveniendas bottlenecks. Varias quaestiones perficiendi spectabimus, quae celeritatem praebendi officia ad usores impedimento limitant et notas proprias huius generis programmatis notebimus.

Gradus servitii postulatio a blockchain clientis

Ut honeste dicam de qualitate alicuius muneris implicati plus minusve, oportet considerare non solum valores mediocres, sed etiam maximum/minimum, medianum, centenum. Theoretice loqui possumus de 1000 tps in aliquo impedimento, sed si 900 transactionum ingenti celeritate confecta est, et 100 "adhæsit" paucis secundis, tunc tempus medium collectum super omnes transactiones non est omnino aequum metricum clienti. qui non potui paucis secundis rem conficere. Temporaria "foramina" causata consensus circumeuntium vel retis scinditur multum labefactare possunt servitutem quae egregiam observantiam in scamnis testium ostendit.

Ut huiusmodi bottlenectes identificentur, necesse est ut bene intelligantur gradus ad quos verus impedimentum difficultas utentibus inserviat. Circumscribamus cyclum liberandi et dispensandi transactionis, tum novum impedimenti statum obtinendum, ex quo cliens cognoscere potest negotium suum processum et computatum esse.

  1. transaction formatur in client
  2. re signatum est in client
  3. cliens eligat unum e nodis et mittit rem suam
  4. cliens updates ut datorum nodi civitati subscribet, exspectans eventus transactionis apparere
  5. nodo distribuit rem in p2p retis
  6. plures aut BP (stipes producentis) processus exaggeratus rerum adaequationis publicae datorum
  7. BP facit novum obstructionum post dispensando requiritur numerus transactions
  8. BP distribuit novum scandalum in p2p retis
  9. novus scandalum traditur nodi client accessu
  10. nodi updates publica database
  11. nodo videt renovationem de cliente et mittit ei rei notificatio

Nunc propius has gradus inspiciamus et singulas scenas potentias peractas quaestiones describam. Dissimiles systemata centralizata, etiam codicem supplicium in clientibus retis considerabimus. Saepius, cum TPS mensurat, processui temporis transactionis ex nodis colligitur, et non ex cliente - hoc omnino aequum est. Cliens non curat quam cito nodi negotium suum processit, maximi momenti est ei momentum cum certa informatione de hac re inclusa in claustro ei praesto fit. Est hoc metricum quod per se est transactionis executionis tempus. Hoc significat diversos clientes, etiam rem eandem mittens, recipere posse diversis temporibus omnino, quae pendent ab alveo, onere et propinquitate nodi, etc. Omnino ergo necesse est hoc tempus in clientibus metiri, cum hoc modulus sit qui optimized esse debet.

Praeparans negotium in huius parte

In primis duobus punctis abeamus: transactionis formatur et subsignatur clienti. Impariter satis, hoc etiam potest esse bottleneck clausus effectus a parte huius. Hoc inusitatum est propter officia centralizata, quae omnia calculi et operationes cum notitia suscipiunt, et cliens simpliciter brevem petitionem praeparat, quae magnam copiam notitiarum vel calculorum petere potest, consecutum effectum promptum. In impedimentis, clientis code plus ac potentior fit, et impedimentum nucleus magis ac magis leve fit, et ingentia computandi munera ad programmationem clientem transferri solent. In impedimentis, clientes sunt qui unam rem satis diu parare possunt (de variis meris probationibus, succincta probationibus, liminibus subscriptionibus aliisque in clientis operationibus implicatis loquor). Bonum exemplum de facili probationis in-catenae et gravis praeparationis transactionis in client probatio sodalitatis in indice innixa Merkle-tree, hic. articulus.

Etiam, noli oblivisci clientis codicem negotia non simpliciter ad impedimentum mittere, sed primum statum claustri quaerit - et haec actio congestionem retis et nodis impedimento afficere potest. Itaque, cum mensuris capiendis, par sit mores huius codicis quam maxime fieri posse aemulemur. Etiamsi in tuo stipite ordinarii clientes leves sunt qui signationem digitalium simplicissimam adhibent ad transferendum aliquod beneficium, omni anno adhuc plus ponderis calculi in cliente, crypto algorithms convalescunt, et haec pars processus potest. significant bottleneck conversus in futurum. Cave ergo ne condicionem requiras, cum in transactione diuturna 3.5s, 2.5s in praeparandis et signandis transactionibus impenduntur, et 1.0s mittendo ad retiaculum et responsionem expectantes. Ad pericula huius bottleneck aestimanda, necesse est ut metrica ex machinarum clientium colligant, et non solum ex nodis impedimentis.

Mittens in re et magna eius status

Proximum est, ut rem ad nodi delectorum claustrorum mittat et statum recipiat in piscinam transactionem recipiendi. Scaena haec similis datorum regulari aditus est, nodi transactionem in piscina notare debent et informationes distribuere de eo per retis p2p incipiunt. Accessus ad perpendendas observantias hic similis est perpendendis faciendis microservices traditae Web API, et ipsae operationes in impedimentis renovari possunt et actuose statum suum mutare. In genere, adaequationis transactionis informationes de aliquibus claustris multipliciter fieri potest, exempli gratia cum permutatio inter uncinos vel cum BPs nuntiant intentionem suam ut transactionem in scandalo includat. Limites in magnitudine huius piscinae et numero negotiorum in eo impedimento exercendo afficere possunt. Si res piscinae ad magnitudinem maximam quam maxime refertum est, aut in RAMO non convenit, retis effectus acriter stillare potest. Claustra non habent media media tutandi contra nuntiis junkis, et si impedimentum altum volumen transactionum et minorum mercedum sustinet, hoc negotium piscinam redundare potest, alia effectio potentiale bottleneck.

In impedimentis, cliens transactionem mittit ad quemlibet impedimentum nodi qui vult, Nullam transactionis notum esse solet clienti antequam mittens, ergo omnes, quibus opus est facere, nexum consequi et, post transmissionem, exspecta impedimentum mutandi. statum suum, ut suum negotium gereret. Nota quod mensurando "tps" proventuum diversorum omnino consequi potes pro diversis modis connectendi cum claustro nodi. Hoc potest esse regularis HTTP RPC vel WebSocket quod sino vos ad exemplar "subscribe" efficiendum. In secundo casu, cliens antea notificationem accipiet, et nodi minus subsidia (maxime memoria et negotiatio) in responsis de statu rei gestae habebunt. Cum ergo metiens "tps" considerare necesse est ut clientes modo ad nodos iungant. Ideo, ut pericula huius bottleneck perpendant, Probatio scandali debet clientes aemulari cum petitionibus WebSocket et HTTP RPC, in proportionibus retis realibus correspondentibus, necnon naturam negotiorum et earum magnitudinem mutare.

Ad pericula huius bottleneck perpendenda, etiam metrica ex machinarum clientium colligere debes, et non solum ex nodis clausulis.

Transmissio transactionum et cuneos per network p2p

In caudices, pares ad-parem (p2p) networking adhibentur ad transactiones et caudices transferendi inter participes. Transactiones per retia diffusa, ab uno nodorum incipientes, usque ad parium stipitem perveniunt, qui negotia in caudices faciunt et, eodem p2p utentes, novos cuneos omnibus nodis retis distribuunt. Fundamentum recentiorum p2p reticulorum variae modificationes Kademlia protocolli sunt. hic a good summary of this protocol, and hic - Articulus cum variis mensuris in reticulo BitTorrentino, ex quo intellegi potest hoc genus retis magis implicatum et minus praevideri quam stricte figuratum retis centralised muneris. Item, hic articulus de metiendis variis interesting metris pro Ethereum nodis.

In summa, quilibet par in tali retia suum retinet dynamicum album aliorum parium, ex quibus petit cuneos informationum quae a contento diriguntur. Cum par petitionem accipit, vel necessarias informationes dat vel petit ad sequentem pseudo-passim parem ex albo petit, et accepta responsione, transit roganti et aliquandiu hoc dat. angustos of notitia antea proximo tempore. Ita notitiae populares in magno numero cellarum numerorum parium desinunt, et invidiosas informationes paulatim explentur. Pares tabulas servant illorum qui quantum informationes ad quos transtulerunt, et retiacula activas distributores incitare studet augendo aestimationes eorum et in altiori gradu servitii providens, sponte divellens inertos participes ex paris tabulis.

Transactio nunc per retia necessaria distribui debet ut artifices stipatores videre et includere includere. Nodus actuose "distribuit" novam transactionem omnibus et auscultat retiaculum, exspectans truncum in cuius indice negotio inquisita apparebit ut clientem exspectantem certiorem faciat. Tempus accipit retis ad informationes transferendi de rebus novis et caudices inter se in reticulis p2p ex plurimis factorum dependet: numerus nodis honestarum prope (ex parte retis) operantium, "calidum- sursum" e promptuariis harum nodi, magnitudo caudices, transactionum, natura mutationum, geographia retis, numerus nodi et multa alia elementa. Mensurae complexae in his reticulis perficiendi metricae res implicatae sunt, necesse est ut simul petitionem processus temporis in utroque clientium et parium (nodorum claustrorum) perpendat. Problemata in quibusvis machinationibus p2p, evictionis et caching notitiarum vitiorum, inefficax administratione indices parium activorum, et plura alia, moras efficere possunt quae efficientiam totius retis in totum afficiunt, et haec bottleneck difficillimum est ad analysim. probatio et interpretatio proventuum.

Blockchain processus et status database updating

Maxima pars clausulae est consensus algorithmus, eius applicatio ad novos caudices acceptos a retis et processu negotiorum cum recordatione eventuum in datorum statu. Novum stipitem catenae addens ac deinde catenam principalem eligens quam celerrime operari debet. Attamen in vita reali "opera" non significat, et potest, exempli gratia, condicionem in qua duo vincula diu certatim inter se perpetuo permutantur, metadata millium negotiorum in stagno ad singulas transitum mutando. atque assidue rempublicam datorum volvens. Hic scaena, secundum definitionem bottleneck, simplicior est quam stratum retis p2p, quod transactionis exsecutio et consensus algorithmus stricte deterministica sunt, et facilius aliquid hic metiri potest.
Summa res non est temere degradationem confundere in hoc stadio cum quaestionibus retis - nodi tardius in tradendis caudices et informationes circa catenam principalem, et ad clientem externum hoc spectare potest quasi lentum retis, quamvis quaestio sit in omnino alio loco.

Ad perficiendum hac scaena optimize, utile est ex ipsis nodis metricas et monitores colligere et in iis includere quae ad adaequationem rei publicae datae sunt: ​​numerus clausorum processit in nodo, magnitudine, numero negotiorum; numerus virgarum inter uncinos catenarum, numerus clausorum invalidorum, apparatus virtualis temporis operans, notitia temporis committendi, etc. Hoc impediet difficultates retis ne confundantur cum erroribus in vinculo algorithmorum processus.

Recta machina processus transactionum utilis esse potest fons informationum quae operationem claustri optimize possunt. Numerus prouinciis memoriae, numerus instructionum legere/scribere, et alia metrica ad efficientiam contractus codicis pertinentia multum utiles informationes tincidunt praebere possunt. Eodem tempore, captiosus contractus programmata sunt, quae in theoria opes quaslibet opes consumere possunt: ​​cpu/memoria/network/repono, ergo processus negotiorum est scaena magis incerta, quae praeterea multum mutat cum inter versiones movens et cum variantibus codicibus contractus. Ergo, metrici ad transactionem processus pertinentes, etiam opus sunt ad efficaciter optimize impedimentum faciendum.

Receptio per clientem notificationis de inclusione transactionis in blockchain

Hic est ultimus gradus impedimenti clientis recipiendi servitium, aliis gradibus comparati, non sunt magna supra caput gratuita, sed adhuc valet considerare facultatem clientis recipiendi responsionem multiplicem a nodo (exempli gratia dolor contractus. rediens aciem data). Utcumque, hoc maxime interest pro eo qui quaesivit "quot tps in tuo claustro sunt?", quia Hoc momento, tempus recipiendi officium traditur.

In hoc loco semper est missio maturitatis quam client tempus exspectans responsionem e impedimento expendere, hoc tempus utentis confirmationem in applicatione eius exspectabit et eius optimizatio est. consectetur sollicitudin tincidunt.

conclusio,

Quam ob rem genera operationum in clausulis factas describere possumus, easque in plures categorias dividere;

  1. transformationes cryptographicae, probationem constructionis
  2. pari-ut-parem networking, negotium et obstructionum replicationem
  3. negotium processus, supplicium de captiosus contractus
  4. applicans mutationes in blockchain ad statum database, adaequationis notitia in transactions et cuneos
  5. legere solum petitiones ad statum database, API nodi blockchain, officia subscriptionis

In genere, technicae requisita pro hodiernis nodis clausurae gravissimae sunt - celeriter CPUs pro cryptographia, magna copia RAM ad reponendas et cito accessum datorum status, commercium retis utens multis simul apertis coniunctionibus et magnis repositionibus. Haec alta requisita et copia diversi generis operationum inevitabiliter conducunt quod nodi satis facultates non possunt, et tunc quaelibet gradatim de quibus supra dictum est potest fieri alius bottleneck pro altiore retis effectus.

Cum meditandi et aestimandis impedimentis faciendis, omnia horum punctorum in rationem accipere debebis. Ad hoc faciendum, metrica simul ex clientibus et nodis retis colligere et resolvere debes, correlationes inter eos quaere, tempus aestimare clientibus officia praebere, rationem omnium praecipuarum facultatum: cpu/memoriam/retis/repono cognosce quomodo se habeant atque influant. Ex his omnibus comparat velocitates impedimentorum diversorum sub forma "quot TPS" munus valde ingratum, cum ingens numerus variarum figurarum ac statuum existat. In magnis systematibus centralizatis, racemis centenariorum ministrantium, problemata haec etiam implicata sunt ac etiam collectionem requirunt permulta diversa metrica, sed in impedimentis, ob retiacula p2p, machinarum virtualium contractuum processus, oeconomiae internae, numerum graduum. Libertatis multo maior est, quae experimentum etiam in pluribus servientibus efficit, ea non indicativa ac demonstrat tantum valores valde approximatos, qui nullam fere connexionem cum re habent.

Cum igitur in nucleo stipendii elaborandum est, ad perficiendum et solvendum quaestionem "an melius comparatum ad ultimum tempus?" utimur plane implicato programmate, qui orchestrat immissionem stipendii cum nodis nodis et automatice mittit signum et collectam metricam. sine hac indicio difficillimum est debug protocolla qui multiplicibus participantibus operam dant.

Cum ergo quaestionem accipias "quot TPS in tuo claustro sunt?", interlocutorem tuum aliquod tea praebe et interroga an paratus sit ad duodecim graphas spectare et etiam audi omnes tres pixides clausulae perficiendi quaestiones ac suggestiones tuas pro solvendo...

Source: www.habr.com

Add a comment