Microservices: menene su, me yasa suke da kuma lokacin aiwatar da su

Ina so in rubuta labarin kan batun gine-ginen microservice na dogon lokaci, amma abubuwa biyu sun ci gaba da dakatar da ni - yayin da na ci gaba da shiga cikin batun, da alama a gare ni cewa abin da na sani a bayyane yake, da abin da na yi' t san yana buƙatar nazari da nazari. A gefe guda, ina tsammanin cewa akwai wani abu da za a tattauna a tsakanin masu sauraro da yawa. Don haka ana maraba da madadin ra'ayoyin.

Dokar Conway da dangantakar kasuwanci, tsari da tsarin bayanai

Zan sake ba da damar kaina in faɗi:

"Duk kungiyar da ta tsara tsari (a cikin ma'ana mai faɗi) za ta sami ƙira wanda tsarinsa ya kwaikwayi tsarin ƙungiyoyi a cikin ƙungiyar."
- Melvyn Conway, 1967

A ganina, wannan doka ta fi dacewa da yuwuwar shirya kasuwanci, maimakon kai tsaye ga tsarin bayanai. Bari in yi bayani da misali. Bari mu ce muna da wani fairly barga kasuwanci damar tare da rayuwa sake zagayowar na irin wannan tsawon cewa shi ya sa hankali don tsara wani sha'anin (wannan ba typo, amma ina son wannan lokaci da na sata ta halitta, da goyon bayan tsarin na wannan kasuwanci). zai dace da tsari da tsari da wannan kasuwancin.

Harkokin kasuwanci na tsarin bayanai

Microservices: menene su, me yasa suke da kuma lokacin aiwatar da su

Bari in yi bayani da misali. Bari mu ce akwai damar kasuwanci don tsara kasuwancin sayar da pizza. A cikin nau'in V1 (bari mu kira shi pre-bayani), kamfanin pizzeria ne, rijistar kuɗi, da sabis na bayarwa. Wannan sigar ya daɗe a cikin yanayin ƙarancin canjin muhalli. Sa'an nan sigar 2 ta zo don maye gurbinsa - mafi ci gaba kuma yana iya amfani da tsarin bayanai a ainihinsa don kasuwanci tare da gine-ginen monolithic. Kuma a nan, a ra'ayina, akwai kawai mummunan zalunci dangane da ma'abuta tauhidi; da ake zargin gine-ginen monolithic bai dace da tsarin kasuwancin yanki ba. Haka ne, idan haka ne, tsarin ba zai iya yin aiki kwata-kwata ba - wanda ya saba wa ka'idar Conway iri ɗaya da hankali. A'a, tsarin gine-ginen monolithic ya dace da tsarin kasuwanci a wannan mataki na ci gaban kasuwanci - Ni, ba shakka, ina nufin matakin da aka riga an ƙirƙiri tsarin kuma an fara aiki. Gaskiya ne mai ban al'ajabi cewa ba tare da la'akari da tsarin gine-gine ba, duka nau'in gine-ginen da suka dace da sabis na 3 da sigar gine-ginen microservices N za su yi aiki daidai da kyau. Menene kama?

Komai yana gudana, komai yana canzawa, ko microservices hanya ce ta yaƙi da rikitarwa?

Kafin mu ci gaba, bari mu kalli wasu rashin fahimta game da gine-ginen microservice.

Magoya bayan yin amfani da tsarin microservice sau da yawa suna jayayya cewa karya guda ɗaya zuwa ƙananan sabis yana sauƙaƙa tsarin ci gaba ta hanyar rage tushen lambar sabis na mutum ɗaya. A ra'ayina, wannan magana gabaki ɗaya ce. A zahiri, zahirin mu'amala tsakanin lambar guda ɗaya da kamanceceniya tana da wahala? Idan da gaske haka lamarin yake, da farko za a gina dukkan ayyukan a matsayin ƙananan sabis, yayin da aikin ya nuna cewa ƙaura daga monolith zuwa ƙananan sabis ya fi kowa. Hadarin baya bace; yana motsawa kawai daga daidaikun mutane don musayar mutane (a sa shi Buses, RPC, APIS, da sauran tsarin ladabi) da sauran tsarin ladabi) da kuma sauran tsarin ladabi) da kuma sauran tsarin ladabi) da kuma sauran tsarin ladabi) da kuma sauran tsarin yarjejeniya) da kuma wasu tsare-tsaren) da kuma sauran tsarin ladabi) da kuma wasu tsare-tsaren. Kuma wannan yana da wahala!

Amfanin amfani da tari iri-iri shima abin tambaya ne. Ba zan yi jayayya cewa wannan ma yana yiwuwa, amma a gaskiya yana faruwa da wuya (Duba gaba - wannan ya kamata ya faru - amma a maimakon haka maimakon wani fa'ida).

Zagayowar rayuwar samfur da tsarin rayuwar sabis

Kalli wani hoton hoton da ke sama. Ba daidai ba ne na lura da raguwar tsarin rayuwa na wani nau'in kasuwanci na daban - a cikin yanayi na zamani, shine hanzarin sauyawar kasuwanci tsakanin nau'ikan da ke da mahimmanci ga nasararsa. Nasarar samfur ana ƙaddara ta saurin gwajin hasashe na kasuwanci a cikinsa. Kuma a nan, a ganina, ya ta'allaka ne da mahimmin fa'idar gine-ginen microservice. Amma mu je cikin tsari.

Bari mu ci gaba zuwa mataki na gaba a cikin juyin halittar tsarin bayanai - zuwa tsarin gine-ginen da ya dace da sabis na SOA. Don haka, a wani lokaci mun yi alama a cikin samfuranmu ayyuka masu tsawo - tsawon rai ta ma'anar cewa lokacin motsawa tsakanin nau'ikan samfuri, akwai damar cewa yanayin rayuwar sabis ɗin zai kasance mafi tsayi fiye da yanayin rayuwar samfurin na gaba. Zai zama ma'ana kada a canza su kwata-kwata - mu Abin da ke da mahimmanci shine saurin sauyawa zuwa sigar gaba. Amma kash, an tilasta mana yin canje-canje akai-akai ga ayyuka - kuma a nan komai yana aiki a gare mu, ayyukan DevOps, kwantena, da sauransu - duk abin da ke zuwa hankali. Amma waɗannan har yanzu ba ƙananan sabis ba ne!

Microservices a matsayin hanyar yaƙi da sarƙaƙƙiya ... sarrafa sanyi

Kuma a nan za mu iya ƙarshe matsawa zuwa ma'anar aikin microservices - wannan hanya ce da ke sauƙaƙa sarrafa tsarin samfurin. A cikin ƙarin daki-daki, aikin kowane microservice yana bayyana ainihin aikin kasuwanci a cikin samfurin bisa ga tsarin yanki - kuma waɗannan abubuwa ne waɗanda ba a cikin ɗan gajeren lokaci ba, amma a cikin damar kasuwanci mai tsawo. Kuma canzawa zuwa samfurin na gaba yana faruwa a zahiri ba a lura da shi ba - kun canza / ƙara microservice ɗaya, kuma watakila kawai makircin hulɗar su, kuma ba zato ba tsammani ku sami kanku a nan gaba, kuna barin masu fafatawa da kuka da suka ci gaba da tsalle tsakanin sassan su monoliths. Yanzu yi tunanin cewa akwai ɗimbin girma na ƙananan sabis tare da ƙayyadaddun musaya da damar kasuwanci. Kuma kun zo ku gina tsarin samfuran ku daga shirye-shiryen microservices - kawai ta zana zane, alal misali. Taya murna - kuna da dandamali - kuma yanzu zaku iya jawo hankalin kanku kasuwanci. Mafarki Mafarki.

binciken

  • Gine-ginen tsarin ya kamata a ƙayyade ta tsarin rayuwar abubuwan da ke tattare da shi. Idan wani sashi yana rayuwa a cikin sigar samfur, babu wata ma'ana a ƙara rikiɗar tsarin ta amfani da tsarin ƙaramar sabis.
  • Gine-ginen Microservice yakamata ya dogara ne akan ƙirar yanki - saboda damar kasuwanci shine yanki mafi dadewa
  • Ayyukan isarwa (ayyukan DevOps) da ƙungiyar kade-kade suna ɗaya daga cikin mafi mahimmanci ga gine-ginen microservice - saboda haɓakar ƙimar canjin abubuwan abubuwan da ke haifar da haɓaka buƙatu akan saurin da ingancin isarwa.

source: www.habr.com

Add a comment