Sic collige metri. sicut nos. Concedimus etiam metrice. Nimirum res necessarias. Hodie loquemur de primo nexu systematis vigilantiae - statsd-compatible servientis aggregationis
Ex articulis superioribus nostris (
Vindicare 1 . Github, elaborandi elit, illud sustentans substitit: inaequalitates et fixas publicans, nostrum acceptando et (non solum nostrum) PR. Paucis proximis mensibus (alicubi a Februario-March 2018) actio resumpsit, sed ante annos fere 2 summa tranquillitas fuit. Praeterea, consilium augetur
Vindicare 2 . Accuratio calculorum. Brubeck colligit summam 65536 valorum pro aggregatione. In casu nostro, aliquot metrice, tempore aggregationis (30 secundis), multo plures valores attingere possunt (1 ad apicem). Ex hac sampling, maximi ac minimi valores inutiles videntur. Exempli gratia;
Sicut erat
Quomodo debuerit
Eadem ratione ponderis plerumque perperam computantur. Adde hic cimex cum 32-bito supernatantis exuberantia, qui vulgo servo segfault ad recipiendum quasi innocens metricus emittit, et omnia magna fiunt. Cimex obiter non fixum.
Et tandem, Dictum X *. In tempore scribendi prompti sumus eam omnibus exhibere 14 plus minusve operis statsd operationes quas invenire potuimus. Fingamus aliquem infrastructuram unicam tantum ita crevisse ut 4 decies centena MPS accipere iam satis non sit. Aut etiam si nondum crevit, sed metrici iam tanti momenti sunt ut etiam breves, 2-3 minuti in chartis immergantur iam critici fieri possunt et inexsuperabilis tristitiae inter dispensatores praebent. Cum de tristitia agitur, opus ingratum est, solutiones technicae necessariae sunt.
Uno modo, culpa tolerantiae, ita quod quaestio subitanea de servo zombie apocalypsi psychiatricis causat non in officio. Secundo, scalis plusquam 4 decies centena MPS accipere posse, quin in ACERVUM Linux profunde fodiat et ad debitam magnitudinem placide crescens "in latitudinem".
Cum locum ad scalas habuimus, a culpa tolerantiae incipere decrevimus. "CIRCA! Culpa tolerantia! Simplex est, id facere possumus", 2 ministrantes cogitavimus et deduximus, exemplum Brubeckius in singulis suscitans. Ad hoc faciendum commercium metrice cum metris utriusque ministris exscribere debebamus ac etiam pro hoc scribere
Si parum cogitas de problemate et simul nix trulla effodere, tunc sequens notio manifesta in mentem venit: opus statsd quod in modo distributo operari potest. Hoc est, unum quod instrumento synchronisationi inter nodos tempore et metrico. "Certe, talis solutio probabiliter iam existit", diximus et ad Google .... perreximus. et nihil invenerunt. Post varias statsd documenta perambulans (
Et tunc recordati sumus de "toy" statsd - bioyino, quod scriptum est apud Justum pro Fun hackathon (nomen propositi a scriptione ante initium hackathonis generatum est) et intelleximus nos instanter nostra statsd indigere. Quod?
- quia pauci sunt statsd clones in mundo;
- quia possibile est optatam vel prope optatam culpam tolerantiae et scalabilitatis praebere (including synchronum aggregatum metri inter servientes et problema mittendi certamina solvenda);
- quia metri accuratius computare potest quam Brubeckius;
- quia potes te ipsum accuratiorem statisticam colligere, quod Brubeckius nobis fere non praebuit,
- quia facultas programmatis meae hyperperformance distributae scalae labariae applicationis habui, quae architecturam alterius hyperfori similis omnino non repetet, id est.
Quid scribam? Nempe in Rust. Quare?
- quia iam erat prototypum solutio;
- quia auctor articuli iam tunc sciebat Rust et studuit scribere aliquid in eo ad producendum cum opportunitate illud in aperto fonte ponere;
- quia linguae cum GC non sunt nobis aptae propter naturam negotiationis receptae (fere realis) et GC moras fere ingratas sunt;
- quod opus maximum perficientur comparari C
- quia rubigo nobis sine interrito concurrentia praebet, et si scribere coepimus in C/C++, in gravioribus nuditatibus, exuberantibus quiddam, generis conditionibus et aliis FORMIDULOSUS verba, quam Brubeckius exaravimus.
Argumentum etiam fuit contra Rust. Societatem inceptis in Rust creandis expertem habuit, et nunc etiam non cogitamus ea uti in summa incepta. Ideo erant graves timores ut nihil operetur, sed casus capere placuit et conatus est.
Tempus transivit...
Denique, post aliquot conatus defecerunt, prima versio laboratum parata est. Quid accidit? Hoc ita factum est.
Quilibet nodi suum ordinem metri accipit et cumulat eas, nec metricas aggregat pro illis speciebus ubi plena copia requiritur ad ultimam aggregationem. Nodi inter se conexi sunt quodam genere protocollo cincinno distributo, quod unum solum (hic clamavimus) inter se deligere sinit, dignum metri causa ad Magnum mittendum. Hoc problema est currently esse certus per
UDP cum metricis fasciculis inaequalis sunt inter nodos in apparatu retis per simplicem rotundum Robinum. Scilicet, hardware retis non contenta fasciculorum parse et ideo multo plus quam 4M per secundam trahere potest, ne dicam metrics de quibus nihil omnino scit. Si consideremus metricos non semel in singulis fasciculis venire, tunc nullas quaestiones perficiendas hoc loco praevidemus. Si servo inruerit, celeriter fabrica retiacula (intra 1-2 secundis) hoc facto detegit et a conversione servo ingruente removet. Qua de causa nodi passivi (i.e., non-duces) in et off in praxim converti possunt sine notis in chartis deductiones. Maximam amittimus partem metri quae in secundo ultimo fpectat. Subita iactura / shutdown / transibit ducis adhuc minorem anomaliam creabit (XXX secundo intervallo adhuc e sync e est), sed si communicatio est inter nodi, hae difficultates minui possunt, exempli gratia, emittente synchronisationi facis .
Pauca de structura interna. Multiplicatio quidem applicatio est, sed stamina architectura alia est quam usus in Brubeck. Stamina in Brubeck eadem sunt - singulae earum responsabiles sunt utriusque notitiae collectionis et aggregationis. In bioyino, operarii in duos circulos divisi sunt: ββqui reticuli responsales et aggregationis responsales sunt. Haec divisio permittit ut mollius applicationem moderandi secundum rationem metricam: ubi intensiva aggregatio requiritur, aggregatores addere potes, ubi multum est commercii retis, numerum retis fluit addere potes. In momento, servientibus nostris in retis 8 et 4 aggregationis operam dabimus.
Pars computationis (responsible pro aggregatione) est satis taediosa. Buffers retis repleti inter fluxiones numerandas distribuuntur, ubi postea parseduntur et aggregatur. Postulantibus, metrice dantur ad alias nodos mittendas. Haec omnia, etiam notitia nodis inter mittens et cum Consule operante, asynchrone conficitur, in compage currit
Multo plures problemata in evolutione causata sunt a parte reticulari quae ad metricos recipiendos pertinet. Praecipuum propositum separationis retis in singulas res influit, desiderium minuendi tempus quo fluxus impendit non notitia legere nervum. Optiones asynchronas UDP utentes et recvmsg regulares cito evanuerunt: prima nimium usoris spatium CPU consumit ad processus eventus, secunda nimis multas virgas contextus requirit. Ideo nunc usus est
illud
In uncinis defaltis, magnitudo quiddam positum est ut satis magna sit. Si subito volueris experiri servo tuo, hoc incurrere potes quod, misso paucitate metri, in Graphite non pervenient, remanentes in retis quiddam. Cum paucitate metri elaborare debes, bufsize et molis-queue-amplitudinem ad minora in config ponendam.
Denique nonnullae chartse pro chartis amantibus.
Statistica in numero metri advenientis pro singulis servientibus: plus quam 2 decies centena MPS.
Nodorum inactivare unum et metri redistribuendi advenientis.
Statistics in exitu metrico: una tantum nodi semper mittit - umbone incursionis.
Statistica operationis cuiusque nodi, attentis erroribus variis modulorum systematis.
Copiae metricae enarratio (metrica nomina latent).
Quid cum hoc proximo molimur? Scilicet scribe codicem, damnare...! Propositum primum propositum fuit ut fons apertus et ita per totam vitam manebit. Consilia immediata nostra includunt commutatione ad nostram versionem Raft, mutata parem protocollum ad unum portatilem, adiectis adiectis statisticis internis, nova genera metri, cimex fixa et aliae emendationes.
Utique omnibus gratum est auxilium in evolutione propositi: creare PR, Exitus, si fieri potest, respondebimus, emendabimus, etc.
Eo dicto, omnes gentes, emite elephantos nostros!
Source: www.habr.com