Монолити маро баргардонед

Чунин ба назар мерасад, ки авҷи шустушӯи хидматрасонии микросервисҳо пушти сар шудааст. Мо дигар дар як ҳафта чанд маротиба мақолаҳоро намехонем "Чӣ гуна ман монолитамро ба 150 хидмат интиқол додам." Ҳоло ман фикрҳои солимро мешунавам: "Ман аз монолит нафрат надорам, ман танҳо дар бораи самаранокӣ ғамхорӣ мекунам." Мо ҳатто якчанд муҳоҷиратро мушоҳида кардем аз микросервисҳо ба монолит бармегарданд. Ҳангоми гузаштан аз як замимаи калон ба якчанд хидматҳои хурдтар, шумо бояд якчанд мушкилоти навро ҳал кунед. Биёед онҳоро то ҳадди имкон мухтасар номбар кунем.

Танзимот: аз химияи асосӣ то механикаи квантӣ

Таъсиси пойгоҳи додаҳо ва барномаҳо бо раванди замина як раванди хеле содда буд. Ман Readme-ро дар Github нашр мекунам - ва аксар вақт пас аз як соат, ҳадди аксар чанд соат ҳама чиз кор мекунад ва ман як лоиҳаи навро оғоз мекунам. Илова ва иҷро кардани код, ҳадди аққал барои муҳити ибтидоӣ, дар рӯзи аввал анҷом дода мешавад. Аммо агар мо ба хидматрасониҳои хурд машғул шавем, вақти оғозёбӣ хеле баланд мешавад. Бале, ҳоло мо Docker бо оркестр ва кластери мошинҳои K8 дорем, аммо барои як барномасози навкор ҳамаи ин хеле мураккабтар аст. Барои бисёре аз наврасон, ин бори вазнинест, ки воқеан як мушкилии нолозим аст.

Системаро фаҳмидан осон нест

Биёед, лаҳзае ба навраси худ таваҷҷӯҳ кунем. Бо замимаҳои монолитӣ, агар хатогӣ рух диҳад, онро пайгирӣ кардан осон буд ва фавран ба ислоҳкунӣ гузаред. Ҳоло мо хидмате дорем, ки бо хидмати дигаре сӯҳбат мекунад, ки чизе дар автобуси паёмӣ, ки хидмати дигарро коркард мекунад, дар навбат меистад ва он гоҳ хатогӣ рух медиҳад. Мо бояд ҳамаи ин қисмҳоро якҷоя кунем, то бифаҳмем, ки хидмати A версияи 11-ро иҷро мекунад ва хидмати E аллакай версияи 12-ро интизор аст. Ин аз гузориши стандартии ман фарқ мекунад: бояд барои роҳ рафтан аз терминали интерактивӣ/debugger истифода шавад. тавассути раванди қадам ба қадам. Ислоҳот ва фаҳмиш табиатан мушкилтар шудааст.

Агар он ислоҳ карда нашавад, шояд мо онҳоро озмоиш кунем

Интегратсияи муттасил ва рушди муттасил ҳоло як чизи маъмулӣ шудааст. Аксари барномаҳои наве, ки ман мебинам, бо ҳар як нашри нав ба таври худкор озмоишҳо эҷод ва иҷро мекунанд ва пеш аз бақайдгирӣ бояд санҷишҳо гузаронида шаванд. Ин равандҳои бузурге мебошанд, ки набояд онҳоро тарк кард ва барои бисёре аз ширкатҳо як тағйироти бузург буданд. Аммо ҳоло, барои воқеан санҷидани хидмат, ман бояд версияи пурраи кории аризаамро кашам. Дар хотир доред, ки муҳандиси нав бо кластери K8 аз 150 хидмат? Хуб, ҳоло мо системаи CI-и худро таълим медиҳем, ки чӣ гуна ҳамаи ин системаҳоро ба кор барем, то боварӣ ҳосил кунем, ки ҳама чиз воқеан кор мекунад. Эҳтимол, ин кӯшиши аз ҳад зиёд аст, бинобар ин мо ҳар як қисмро дар алоҳидагӣ месанҷем: Ман боварӣ дорам, ки хусусиятҳои мо ба қадри кофӣ хубанд, APIҳо тозаанд ва нокомии хидмат дар алоҳидагӣ аст ва ба дигарон таъсир намерасонад.

Ҳама созишҳо сабаби хуб доранд. Дуруст?

Сабабҳои зиёд барои гузаштан ба хидматрасонии микроэлементҳо мавҷуданд. Ман дидаам, ки ин барои чандирии бештар, барои миқёси дастаҳо, барои иҷроиш, барои таъмини устувории беҳтар анҷом дода шудааст. Аммо дар асл, мо даҳсолаҳоро ба асбобҳо ва амалияҳо барои таҳияи монолитҳо, ки таҳаввулро идома медиҳанд, сармоягузорӣ кардем. Ман бо мутахассисон дар технологияҳои гуногун кор мекунам. Мо одатан дар бораи миқёс гап мезанем, зеро онҳо ба ҳудуди як гиреҳи пойгоҳи додаҳои Postgres дохил мешаванд. Аксари сӯҳбатҳо дар бораи он миқёси пойгоҳи додаҳо.

Аммо ман ҳамеша ба омӯхтани меъмории онҳо таваҷҷӯҳ дорам. Онҳо дар кадом марҳилаи гузариш ба хидматрасониҳои хурд қарор доранд? Ҷолиб он аст, ки дидани бештари муҳандисон мегӯянд, ки онҳо аз татбиқи монолитии худ қаноатманданд. Бисёр одамон аз хидматрасонии микроэлементҳо баҳра хоҳанд бурд ва фоидаҳо дар роҳи муҳоҷират бартарӣ хоҳанд дошт. Аммо шахсан, лутфан ба ман аризаи монолитии ман, ҷой дар соҳил диҳед - ва ман комилан хушбахтам.

Манбаъ: will.com

Илова Эзоҳ