Aloha, Habr! Ke hoike aku nei au i kou noonoo unuhi a ka mea kākau o ka ʻatikala
I ka manawa e neʻe mālie ai ka honua IT i nā microservices a me nā mea hana e like me Kubernetes, hoʻokahi wale nō pilikia e ʻike nui ʻia. ʻO kēia pilikia -
Inā ʻaʻole maopopo ʻoe i ka pilikia ma ka heluhelu ʻana i kēia kikokikona, e wehewehe wau. E ʻōlelo kākou he 10 mau microservice kāu huahana. I kēia manawa, e manaʻo mākou ua hoʻokuʻu ʻia ka mana hou no kēlā me kēia microservices. ʻO 1 wale nō ka mana - Manaʻo wau e hiki iā mākou ke ʻae he ʻoiaʻiʻo loa kēia. Eia naʻe, e nānā hou kākou i kā mākou huahana. Me hoʻokahi wale nō mana hou o kēlā me kēia ʻāpana, ua loaʻa iā mākou i kēia manawa he 1^2 - a i ʻole 10 mau hoʻololi o ke ʻano o kā mākou huahana e haku ʻia.
Inā loaʻa kekahi kuhihewa, e ʻae mai iaʻu e wāwahi i ka makemakika. No laila, loaʻa iā mākou he 10 microservices, loaʻa kēlā me kēia i hoʻokahi mea hou. ʻO ia hoʻi, loaʻa iā mākou 2 mau mana kūpono no kēlā me kēia microservice (ʻo ka mea kahiko a i ʻole ka mea hou). I kēia manawa, no kēlā me kēia ʻāpana huahana, hiki iā mākou ke hoʻohana i kekahi o kēia mau mana ʻelua. ʻO ka makemakika, ua like ia me ka loaʻa ʻana o ka helu binary o 10 mau huahelu. No ka laʻana, e ʻōlelo kākou ʻo 1 ka mana hou, a ʻo 0 ka mana kahiko - a laila hiki ke kuhikuhi ʻia kahi permutation hiki ke hōʻike ʻia ʻo 1001000000 - kahi i hōʻano hou ʻia nā ʻāpana 1 a me 4, a ʻo nā mea ʻē aʻe a pau ʻaʻole. Mai ka makemakika ʻike mākou he 10-helu helu binary hiki ke loaʻa nā waiwai 2^10 a i ʻole 1024. ʻO ia hoʻi, ua hōʻoia mākou i ka nui o ka helu a mākou e hana nei.
E hoʻomau hou i kā mākou noʻonoʻo - he aha ka hopena inā loaʻa iā mākou 100 microservices a loaʻa i kēlā me kēia me 10 mau mana? ʻAʻole ʻoluʻolu ke kūlana holoʻokoʻa - loaʻa iā mākou i kēia manawa he 10^100 permutations - he helu nui ia. Eia naʻe, makemake au e lepili i kēia kūlana ma kēia ʻano, no ka mea, ʻaʻole mākou e hūnā hou ma hope o nā huaʻōlelo e like me "kubernetes", akā ke kū nei i ka pilikia e like me ia.
No ke aha i hoihoi nui ai au i kēia pilikia? ʻO kahi hapa no ka mea, ua hana mua mākou i ka honua o NLP a me AI, ua kūkākūkā mākou i ka pilikia o ka pahū combinatorial ma kahi o 5-6 mau makahiki i hala. Ma kahi o nā mana i loaʻa iā mākou nā huaʻōlelo pākahi, a ma kahi o nā huahana ua loaʻa iā mākou nā huaʻōlelo a me nā paukū. A ʻoiai ʻo nā pilikia o NLP a me AI e hoʻomau ʻole ʻia, pono e ʻae ʻia ua holomua ka holomua i nā makahiki i hala. (i koʻu manaʻo, hiki ke holomuaоʻOi aku ka maikaʻi inā hoʻemi iki ka poʻe o ka ʻoihana i ke aʻo ʻana i ka mīkini a ʻoi aku ka liʻiliʻi i nā ʻenehana ʻē aʻe - akā aia kēia ma waho o ke kumuhana).
E hoʻi kākou i ka honua o DevOps a me microservices. Ke alo nei mākou i kahi pilikia nui, e hoʻomaʻamaʻa ana me he ʻelepani i ka Kunstkamera - no ka mea, ʻo kaʻu mea e lohe pinepine ai ʻo ia "e lawe wale i nā kubernetes a me ka hoʻokele, a e maikaʻi nā mea āpau!" Akā ʻaʻole, ʻaʻole maikaʻi nā mea a pau ke waiho ʻia nā mea a pau. Eia kekahi, ʻaʻole i ʻae ʻia kahi hopena analytical i kēia pilikia ma muli o kona paʻakikī. E like me ka NLP, pono mākou e hoʻokokoke mua i kēia pilikia ma ka hōʻemi ʻana i ka ʻimi hulina-i kēia hihia, ma ka hoʻopau ʻana i nā permutations kahiko.
ʻO kekahi o nā mea e kōkua ai ʻo ia kekahi mea aʻu i kākau ai i ka makahiki i hala
ʻO ka mea e pono ai mākou he ʻōnaehana hoʻokolohua ma ka pae hoʻohui, kahi e hiki ai iā mākou ke hoʻoholo i ke kumu pilikia no kēlā me kēia ʻāpana, a loaʻa pū kekahi kaʻina hana no ka hoʻomaikaʻi ʻana i nā ʻāpana like ʻole a me ka hoʻāʻo ʻana me ka ʻole o ka mea hoʻohana.
ʻO ia ʻōnaehana hoʻokolohua e like me kēia:
- Kākau nā mea hoʻomohala i nā hoʻokolohua (he pae koʻikoʻi kēia - no ka mea inā ʻaʻole ʻaʻohe o mākou loiloi loiloi - ua like ia me ka hōʻailona ʻana i ka ʻikepili i ka aʻo mīkini).
- Loaʻa i kēlā me kēia ʻāpana (papahana) kāna ʻōnaehana CI ponoʻī - ua hoʻomohala maikaʻi ʻia kēia kaʻina hana, a ua hoʻoholo nui ʻia ka pilikia o ka hana ʻana i kahi ʻōnaehana CI no kahi ʻāpana hoʻokahi.
- ʻO ka "smart integration system" e hōʻiliʻili i nā hopena o nā ʻōnaehana CI like ʻole a hōʻuluʻulu i nā papahana ʻāpana i ka huahana hope, holo i ka hoʻāʻo ʻana a hoʻopaʻa hope i ke ala pōkole loa i ka loaʻa ʻana o ka hana huahana i makemake ʻia e pili ana i nā ʻāpana a me nā kumu pilikia. Inā ʻaʻole hiki ke hōʻano hou, hoʻolaha kēia ʻōnaehana i nā mea hoʻomohala e pili ana i nā ʻāpana i loaʻa a ʻo wai o lākou ke kumu o ka hewa. Eia hou, he mea koʻikoʻi ka ʻōnaehana hoʻāʻo ma ʻaneʻi - no ka mea, hoʻohana ka ʻōnaehana hoʻohui i nā hoʻokolohua ma ke ʻano he loiloi loiloi.
- Pūnaehana CD, a laila loaʻa i ka ʻikepili mai ka Pūnaehana Hoʻohui Smart a hoʻokō pololei i ka hoʻonui. Hoʻopau kēia pae i ka pōʻai.
No ka hōʻuluʻulu ʻana, noʻu kekahi o nā pilikia nui i kēia manawa ʻo ka nele o ia ʻano "Smart Integration System" e hoʻopili ai i nā ʻāpana like ʻole i kahi huahana a no laila e ʻae iā ʻoe e nānā i ke ʻano o ka hui ʻana o ka huahana holoʻokoʻa. E hoihoi au i nā manaʻo o ke kaiāulu e pili ana i kēia (spoiler - Ke hana nei au i kahi papahana
ʻO kahi mea hope aʻu e makemake ai e haʻi aku ʻo ia, iaʻu, ʻaʻole ʻae ʻia kahi monolith no kekahi papahana ʻoi aku ka nui. Noʻu, ʻo ka hoʻāʻo ʻana e wikiwiki i ka manawa hoʻokō a me ka maikaʻi o ka hoʻomohala ʻana ma o ka hoʻi ʻana i kahi monolith ke kumu o ka kānalua nui. ʻO ka mea mua, he pilikia like ka monolith o ka hoʻokele ʻana i nā ʻāpana - i waena o nā hale waihona puke i loaʻa iā ia, akā naʻe, ʻaʻole ʻike ʻia kēia mau mea āpau a hōʻike mua iā ia iho i ka manawa i hoʻohana ʻia e nā mea hoʻomohala. ʻO ka hopena o ka pilikia monolith ka hiki ʻole ke hoʻololi i ke code - a me ka wikiwiki o ka ulu ʻana.
Hoʻonui ka Microservices i ke kūlana, akā ke kū nei ka hale hana microservice i ka pilikia o ka pahū combinatorial i ka pae hoʻohui. ʻAe, ma ka laulā, ua hoʻoneʻe mākou i ka pilikia like mai ka pae hoʻomohala i ka pae hoʻohui. Eia nō naʻe, i koʻu manaʻo, ke alakaʻi nei ka microservices i nā hopena maikaʻi aʻe, a ʻoi aku ka wikiwiki o nā kime i nā hopena (ma muli paha o ka emi ʻana o ka nui o ka ʻāpana hoʻomohala - a i ʻole. nui pūʻulu). Eia naʻe, ʻo ka neʻe ʻana mai ka monolith i ka microservices ʻaʻole i hoʻomaikaʻi maikaʻi i ke kaʻina hana - ʻo ka hui pū ʻana o nā mana microservice he pilikia nui, a he nui kā mākou hiki ke hoʻomaikaʻi i ke kūlana ke hoʻoponopono mākou.
Source: www.habr.com