NDC London Conference. Praeveniens microservice calamitosa. Pars I

Menses redesignantes tuum monolitum in microservices consumpsisti, et tandem omnes simul ad transitum fligendi sunt. Ad primam paginam pergis... nihilque fit. Reload illud - et iterum nihil boni, locus tam tardus est ut pluribus momentis non respondeat. Quid accidit?

In eius sermone, Jimmy Bogard "post-mortem" in real-vita microserviciorum calamitate ducet. Exemplar, evolutionem et problemata productione monstrabit, et quomodo turma sua lente nova distributa monolithum in ultimam sani- tatis imaginem transformavit. Dum impossibile est errores consiliorum omnino impedire, saltem difficultates cognoscere potes primo in processu consilii ad effectum finalem producti, certa ratio distributa evadit.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Salve omnes, Jimmy sum et hodie auditurus es quomodo mega clades vitare potes cum microservices aedificans. Haec fabula societas circiter annum et dimidium laboravi ut adiuvaret ne navis eorum cum iceberg impacta esset. Ut hanc fabulam apte narrem, debemus in tempore reverti et loqui ubi haec societas incepit et quomodo IT infrastructura in tempore crevit. Ad nomina innocentium in hac calamitate tuenda, nomen huius societatis in Bell Computers mutavi. Proxima lapsus ostendit quid infrastructura IT societatum talium in medio 90s apparuit. Haec architectura typica est magnae culpae universalis patientis HP Tandem Mainframe server ad operandum copia ferraria computatralis.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Egebant ut systema aedificarent omnes ordines, venditiones, reditus, catalogi producti, et turpis emptoris, ut frequentissimum solutionem mainframe tempore elegerunt. Haec ratio gigans continebat singulas notitias de societate, omnia possibilia, et per hoc mainframe omne negotium peractum est. Omnia ova sua in uno canistro servabant et id rectum esse existimabant. Sola res quae hic non comprehenditur est catalogi ordo epistularum et ordines telephonicus ponens.

Subinde maior et maior ratio facta est, et ingens moles in eo congesta est. Etiam, COBOL lingua expressissima non est in mundo, ut ratio finita sit magna, fragmentum monolithic junk. Per 2000, viderunt multas societates paginas habere per quas omnia negotia sua absolute gesserunt et constituerunt primum locum commercialem dot-com aedificare.

Consilium initiale pulchrum spectavit et in summo gradu situs bell.com constabat et plures subdomains pro singulis applicationibus: catalog.bell.com, rationes.bell.com, orders.bell.com, producto search.bell. com. Quisque subdomain usus est ASP.Net 1.0 compage et suis databases, et omnes loquebantur ad systema backend. Omnes tamen ordines procedendum et supplicium sumendum intra unum ingentem principalem ordinem, in quo omnia purgamenta manserunt, sed finis anterius cum singulis applicationibus et databases separatis separatus erat.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Consilium igitur systematis ordinatum et logicum spectavit, sed ratio ipsa in proximo lapsu ostensum est.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Omnia elementa appellata inter se vocat, accessed APIs, tertia pars dlls infixa, et similia. Saepe accidit ut systemata versionis in alterius codicem arripiat, illud intra consilium rumpat, et tunc omnia frangantur. MS SQL Server 2005 conceptus nexus servientium usus est, et quamvis sagittas in lapsu non indicavi, singula etiam inter se colloquebantur databases, quia nihil mali est cum tabulis aedificandis innixa notitia ex pluribus databases consecuta.

Cum iam aliquam separationem inter varias logicales regiones systematis haberent, hoc blobs sordium distributus est, cum maxima pars quisquiliarum adhuc manens in mainframe backend.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Ridiculum est hoc mainframe a competitoribus Bell Computers aedificatum et a consiliis technicis adhuc conservatum est. Persuasum est inconveniens de applicationibus faciendis, societas illas removere et rationem reddere decrevit.

Applicatio existentium in productione XV annorum fuerat, quod est recordum applicationis ASP.Net-substructio. Ministerium ab universo orbe terrarum acceptum, et vectigal annuum ex hac una applicatione decies centena millia pervenit. Nota portio lucri a bell.com website generata est. Die Veneris Niger, numerus ordinum per locum positus complures miliones pervenit. Nihilominus architectura exsistentia nullam evolutionem permisit, cum rigidae inter connexiones systematis elementorum fere nullas mutationes in servitium fieri permittebant.

Gravissima quaestio fuit posse ponere ordinem ex una regione, reddere in alia et eam in tertiam mittere, non obstante quod talis mercaturae ratio in societatibus globali valde communis est. Locus existens existens non permisit ad tale aliquid, ut eos ordines recipere et super phone ponere debebant. Inde societas magis magisque cogitans de mutanda architectura, imprimis de mutandis ad microservias.

Rem fecerunt callidum aspiciendo alias turmas ad videndum quomodo problema simile solverint. Una harum solutionum erat architecturae muneris Netflix, quae consistit in micromissionibus per API et datorum externorum connexorum.

De administratione campanarum Computerarum placuit iustam talem architecturam aedificare, certis principiis adhaerens. Primum, data duplicatione eliminarunt utendo accessu communi datorum. Nulla notitia missa est: sed omnes, qui indigebant, ad fontem centralem eundum erat. Hoc secuta est solitudo et autonomia - unumquodque ministerium independenter ab aliis erat. Textus API decreverunt ut omnia absolute - si datas aut mutationes in aliam rationem accipere vellent, totum per Telam API factum est. Novissima res magna erat novum mainframe appellatum "bell on Bell" quod opponitur "bell" mainframe innixa in odio competitorum.

Itaque per decursum XVIII mensium , circa haec nucleum systema aedificaverunt principia , et attulit eam prae-productionem . Reversus ad laborem post volutpat vestibulum, tincidunt convenerunt et se converterunt in omnes ministros quibus nova ratio connexa erat. XVIII menses laboris, centena tincidunt, recentissima ferramenta Campana - et nullum eventum positivum! Hoc multum homines fefellit quia hanc systema in laptop suo multoties currerunt et omnia denique erant.

Animi erant omnem pecuniam suam ad hanc quaestionem solvendam mittere. Maxime moderni servo eculei cum virgas instituerunt, usus gigabit fibra optica, potentissima ferramenta cum insana arietis moles, omnia contexuit, configuravit - et rursus nihil! Tum suspicari coeperunt ut argumentorum rationem esse possent, omnes uncinis interretialibus, omnes API occasus perrexerunt et totam temporis configurationem ad maximorum valores renovaverunt, ita ut omnes possent sedere et aliquid evenire exspectare. ad locum. Exspectaverunt et expectaverunt et expectaverunt IX et dimidium minuta donec situs tandem oneratus est.

Post haec inluxit illis condicionem hodiernam diligenti analysi indigere et nos invitaverunt. Primum invenimus in omnibus evolutionis mensibus XVIII, non una realis "micro" creata est - omnia tantum maiora obtinuit. Post hoc scribere coepimus post mortem, etiam ut "respective", vel "tristis retrospectivus", quae etiam "procellae culpae", similis "tempestatis cerebri", causam calamitatis intelligere coepit.

Plures clues habuimus, quarum una tempore API vocationis negotiationis plena erat. Cum architecturae servitii monolithico uteris, statim intellegere potes quidnam prorsus erraverit, quia vestigium unum habes, quod refert omnia quae deficiendi causare potuerunt. In casu quo fasciculus officiorum eodem API eodem tempore accessurus est, nullum est vestigium vestigii nisi ut instrumenta retis vigilantia adiectis utantur sicut WireShark, propter quod unam petitionem examinare potes et quid in eius exsecutione factum sit experiaris. Unam igitur paginam inde cepimus et quasi per 2 septimanas consumptis aenigmatis fragmentis, varios vocatos ad id faciendos enucleando quid quisque eorum duceret.
Vide hanc imaginem. Ostendit unam petitionem externam impellere ad servitium faciendum ut plures vocationes internae redeuntes reddant. Evenit ut unaquaeque vocationi interna adiciat adsultim ut huic petitioni inservire possit, quia hucusque converti nequit ad necessarias informationes obtinendas. Haec imago vanitati similis vocat cascades, sicut postulatio externa vocat servitia additamenta, quae alia additamenta vocant, et sic porro, in infinitum fere.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Color viridis in hoc schemate semicirculum ostendit in quo officia se invicem vocant - ministerium A vocat servitium B, servitium B vocat servitium C, et vocat ministerium A iterum: unde accipitur "mortalitatem distribui". Una petitio mille retis API vocata creavit, et cum ratio in culpa tolerantiae et ansa praesidium aedificasset, petitio deficeret si vel unum ex his API vocaret deficeret.

Nos quidam math. Singulae API appellationes SLA habuerunt nullius plusquam 150 ms et 99,9% uptime. Una petitio CC diversas vocationes effecit, et optime in casu pagina 200 x 200 ms = 150 secundis demonstrari potuit. Nempe bonum hoc erat. Multiplicando 30% uptime per 99,9, 200% disponibilitate cepimus. Evenit ut haec architectura a primordio defectionis destinata sit.

Interrogavimus tincidunt quomodo hanc quaestionem non agnoscerent post XVIII menses laboris? Contigit quod solum SLA pro codice currentes numeraverunt, sed si ministerium suum aliud servitium appellavit, non computaverunt tempus in suis SLA. Omnia quae intra unum processum deductae sunt valori 18 ms, adhaeserunt, sed accessus ad alios processus muneris totam mora pluries auctus est. Prima discitur: "Tune SLA compos es, an SLA tui compos est?" In nobis erat iste.

Proximum compertum est quod de notione computandi fallacias distributae sciverunt, a Petro Deitch et Jacobo Gosling institutae, sed primam partem neglexerunt. Affirmat dictas "retis certas esse," "nullam latentiam," et "infinitas throughput" esse fallacias. Aliae fallaciae dicuntur "retis securum", "topologia numquam mutatur", "semper unus tantum administrator est", "custus notitiarum translatio nulla est", et "retis homogeneus est".
Erraverunt, quod ministerium suum in machinis localibus temptaverunt et cum exterioribus officiis nunquam aduncum. Cum localiter elaborandum et cella locale utens, retis hops numquam offendit. In omnibus evolutionis mensibus XVIII, numquam semel mirati sunt quid accideret si officia externa affecta essent.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Si fines officii in imagine praecedenti spectes, videre potes omnia falsa esse. Plurimi fontes sunt, qui suadent quomodo fines officii definiant, et maxime peccant, sicut Microsoft in proximo lapsu.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Haec imago e blog MS in argumento "Quam microservices aedificare". Ex quo patet simplicem applicationem interretialem, truncum logicae negotii, ac database. Petitio directe venit, probabiliter unus pro instrumento, unus servo pro negotio, alter pro datorum. Si mercaturam augeas, imago paulum mutabit.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Hic onus librarius venit ad negotiationem distribuendam inter duos ministros telae, cella inter servitutem interretialem et logicam negotiationem positam, et aliud cella inter logicam et datorum negotium. Haec exacte architectura Campana adhibita est ad sui oneris comparationem et caeruleum/viridis applicationis in mediis 2000s. Usque ad aliquod tempus omnia bene operabantur, cum haec ratio ad structuram monolithicam destinaretur.

Sequens pictura ostendit quomodo MS suadet movere a monolitho ad microservices - simpliciter singula officia principalia in microservices separatas dividere. Per exsecutionem huius schematis Campana erravit.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Omnia sua in diversos ordines divisit, quorum quisque ex pluribus officiis consistit. Exempli gratia, ministerium interretialem microservices pro contentis reddendis et authenticis inclusa est, ministerium logicum ex microservices ad ordines et rationes informationes expediendas constabat, database in fasciculum microservices cum notitia speciali data divisa. Tam telae, logicae negotiatores quam datorum opera stata erant.

Nihilominus, haec imago omnino erravit quod unitates negotii extra societatem IT glomerorum non describebat. Quae res cum extra mundum nullam connexionem rationem habuit, ideo non liquet quomodo, exempli gratia, negotium analyticum tertium-pars obtineat. Animadverto etiam plura officia habuisse inventa simpliciter ad curricula singulorum operariorum, qui volebant quam plurimos homines administrare ut plus pecuniae pro ea acciperet.

Credebant mobiles ad microservices tam faciles esse quam ut internam N-ternam corporis infrastructuram iacuit et Docker in ea haerentem capiebat. Inspice quod architectura traditionalis N-terno similis similis videatur.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Constat ex 4 gradibus: UI gradu interfaciei usoris, in gradu negotii logicae, in notitia accessus gradus et datorum. Plus progressivum est DDD (Domain-Drive Design), vel architectura programmatis ordinatur, ubi duo media gradus dominii res sunt et repositio.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Conatus sum inspicere diversas regiones mutationum, varias officiorum areas in hac architectura. In applicatione typica N-terno, variae mutationis areas distinguuntur quae structuram verticaliter a summo ad imum permeant. Hae sunt Catalogi, Mando occasus singulis computatris fiebant, et checkout schedulae quae a quadrigis meis tractabantur.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Proprium huius schematis est quod limites harum regionum mutationis non solum attingunt negotia logica, sed etiam ad res datorum pertinent.

Intueamur quid sit servitium. Proprietates 6 notae notae sunt definitionis servitii - id est programmata:

  • creatus et usus est per ordinationem specificam;
  • reus est argumenti, processus et/vel certae informationis in systemate provisio;
  • aedificari, instrui et currere independenter ad occurrendas necessitates specificas operationales;
  • communicat cum consumers et aliis officiis, edocendi secundum pacta vel cautiones contractuum;
  • et ab injuriis se tutatur;
  • defectus tractat ita ut informationes damni non inducat.

Omnes hae proprietates uno verbo «autonomia» exprimi possunt. Officia sine inter se agunt, restrictiones quasdam satisfaciunt et contractus definiunt ex quibus homines informationes quas indigent recipere possunt. Cuius usus per se patet.

Nunc videamus definitionem microservices:

  • res parvae magnitudinis parvae et ad unam quaestionem specificam solvendam;
  • Microservatio autonoma est;
  • Cum architecturae microservice creando, consilio oppidi metaphora adhibita est. Haec definitio est ex libro Sam Newman, Microservices aedificantis.

Definition of Contextus Bounded is taken from Eric Evans' book Domain-Coegi Design. Hoc est nucleum exemplar in DDD, consilium architecturae quod operatur cum exemplaribus architecturae voluminibus, eas dividens in diversos contextus limitatos et inter eas interationes definitas expresse.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Simpliciter positum, contextus circumscriptus ambitum designat, in quo certo modulus adhiberi potest. In hoc contextu exemplar logice unitum videri potest, exempli gratia, in tuo negotio ditione. Si quaeras "quis cliens" personas in ordinibus implicatas requiris, unam definitionem habebis, si quaeras venditio implicatas, aliam possidebis, et actores tertiam definitionem tibi dabunt.

Ita Contextus ait finitum, si aperte definire non possumus quid sit laboris nostri consumptio, definiamus terminos intra quos de significatione huius vocabuli loqui possumus, ac deinde definitiones inter has diversas definitiones transitus definire. Hoc est, si de cliente loquimur ex parte ordinis constituendi, hoc et illud significat, et si ex parte venditionis, hoc et illud significat.

Proxima definitio microservii est encapsulation cuiuscumque operationum internarum, quo minus "ultura" componentium processus operis in ambitu sit. Deinde sequitur "definitio contractuum expressorum pro interactionum externarum seu communicationum externarum", quae repraesentatur per notionem contractuum ex SLAs redeuntium. Postrema definitio est metaphora cellae, seu cellae, quae significat integram encapsationem certae operationum intra microserviam et praesentiam in ea receptorum ad communicationem cum extra.

NDC London Conference. Praeveniens microservice calamitosa. Pars I

Diximus ergo guys ad Bell Computers: "Non possumus aliquem chaos figere quem creasti quod modo pecuniam non habemus ut faciamus, sed unum tantum servitium figemus ut id totum facias. sensus." Hoc loco incipiam tibi narrare quomodo unum officium nostrum constituimus ut petitionibus 9 et dimidio minutorum citius respondeatur.

22:30 min

Propediem...

A paulo vendo

Gratias tibi ago pro manendo nobiscum. Placetne tibi vasa nostra? Vis videre plus interesting contentus? Suscipe nos ponendo ordinem vel commendando amicos; cloud VPS for developers from $4.99, unicum analogum de ingressu servientibus, quod a nobis pro vobis est inventum: Tota veritas de VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps e $19 vel quomodo ministrator communicabit? (praesto cum RAID1 et RAID10, usque ad 24 coros et usque ad 40GB DDR4).

Dell R730xd 2x vilius in Equinix Tier IV centri Amstelodami? Tantum hic 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV from $199 in Belgio! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - from $99! Read about Quomodo aedificare infrastructuras: Ed. classis cum usu Dell R730xd E5-2650 v4 servientibus valet 9000 nummis Europaeis?

Source: www.habr.com

Add a comment