Ịhọrọ ụdị ụkpụrụ ụlọ (akụkụ 2)

Ndewo, Habr. Taa, m na-aga n'ihu na usoro mbipụta nke m dere kpọmkwem maka mmalite nke iyi ọhụrụ nke usoro ahụ. "Software Architect".

Okwu Mmalite

Nhọrọ nke usoro ihe owuwu bụ otu n'ime mkpebi teknụzụ dị mkpa mgbe ị na-ewu usoro ozi. N'ime usoro isiokwu a, m na-atụ aro ka nyochaa usoro ihe owuwu kachasị ewu ewu maka ịmepụta ngwa ngwa ma zaa ajụjụ nke mgbe ụdị ụkpụrụ ụlọ kacha mma. N'ime usoro ngosi, m ga-agbalị ịdọrọ eriri ezi uche nke na-akọwa mmepe nke ụdị ụlọ site na monoliths na microservices.

В oge ikpeazụ anyị mesoro monolith wee bịa na nkwubi okwu na monolith nwere ọtụtụ nsogbu: nha, njikọta, ntinye, scalability, ntụkwasị obi na siri ike.

N'oge a, m na-atụ aro ikwu maka ohere nke ịhazi usoro dịka nhazi nke modul / ọba akwụkwọ (ihe eji eme ihe na-adabere na ya) ma ọ bụ ọrụ (ọrụ na-arụ ọrụ).

Ihe owuwu dabere na akụkụ

Ihe owuwu gbadoro ụkwụ na mpaghara gụnyere ime usoro dị ka otu ihe nwere ike iji rụọ ọrụ ma ugbu a yana n'ọdịnihu. Mgbe ị na-agbaji usoro n'ime ihe ndị a, a na-eburu n'uche ihe ndị a: ha reusability, ha replaceability, onodu nnwere onwe, extensibility, encapsulation na nnwere onwe.

Site n'iji ihe eji eme ihe nke ọma, a na-edozi nsogbu nke "nnukwu bọọlụ nke unyi" (nnukwu nha + njikọ dị elu), na ihe ndị ahụ n'onwe ha nwere ike ịbụ ma mgbakọ mgbakọ (modul, ọba akwụkwọ) na ntinye ọrụ (ọrụ). Ọ bụghị mgbe niile ka a na-edobe ngalaba ntinye aka na usoro ịgba ọsọ: dịka ọmụmaatụ, a na-ejikọta ngwa weebụ na nchekwa data ọnụ.

Ọtụtụ mgbe, a na-emepụta monoliths dị ka usoro nke modul. Ụzọ a na-eduga na mmepe onwe onye, ​​ma nsogbu nke ịchafụ na ntinye onwe ya, ntachi obi na-ezighị ezi na nnwere onwe pụọ na nchịkọta nkà na ụzụ n'ozuzu ka dị. Ọ bụ ya mere modul ji bụrụ akụkụ nke nwere onwe ya.

Nsogbu kachasị na monolith dị otú ahụ bụ na nkewa n'ime modul bụ ihe ezi uche dị na ya na ndị mmepe nwere ike imebi ya ngwa ngwa. Otu modul isi nwere ike ịpụta, nke ji nwayọọ nwayọọ ghọọ ebe mkpofu ahịhịa, eserese nke ịdabere n'etiti modul nwere ike itolite, na ihe ndị ọzọ. Iji zere nsogbu ndị dị otú ahụ, ekwesịrị ime mmepe ma ọ bụ site na otu tozuru oke, ma ọ bụ n'okpuru nduzi nke "onye na-ese ụkpụrụ ụlọ" nke na-etinye aka na nyocha koodu oge niile ma tie aka nke ndị mmepe na-emebi usoro ezi uche dị na ya.

"Ezigbo" monolith bụ usoro nke modul kewapụrụ n'ụzọ ezi uche dị na ya, nke ọ bụla n'ime ha na-eleba anya na nchekwa data nke ya.

Ihe owuwu dabere na ọrụ

Ọ bụrụ na a ga-ahazi usoro ahụ n'ụdị nhazi nke ọrụ, mgbe ahụ, anyị na-ekwu maka ụlọ ọrụ na-arụ ọrụ. Ụkpụrụ ya bụ mmekọrịta chiri anya ngwa nke onye ọrụ, iji ọrụ azụmaahịa, nnwere onwe tojupụtara teknụzụ, na nnwere onwe (evolushọn nọọrọ onwe ya, scalability, na ntinye).

Ihe owuwu nke dabere na ọrụ (SOA = ụlọ ọrụ dabere na ọrụ) na-edozi nsogbu niile achọpụtara nke monolith: naanị otu ọrụ na-emetụta mgbe mgbanwe mere, yana API akọwapụtara nke ọma na-akwado ezigbo mkpuchi nke akụrụngwa.

Ma ọ bụghị ihe niile dị mma: SOA na-emepụta nsogbu ọhụrụ. Oku ndị dịpụrụ adịpụ dị ọnụ karịa nke mpaghara, na ikesa ọrụ n'etiti akụrụngwa aghọwo ọnụ ahịa nke ukwuu.

Site n'ụzọ, ohere nke ntinye onwe ya bụ akụkụ dị oke mkpa nke ọrụ ahụ. Ọ bụrụ na a ga-etinyerịrị ọrụ ọnụ ma ọ bụ, ọzọkwa, n'usoro ụfọdụ, yabụ enweghị ike iwere sistemụ ahụ dabere na ọrụ. N'okwu a, ha na-ekwu maka monolith ekesa (a na-ewere ya dị ka ihe mgbochi ọ bụghị nanị site n'echiche nke SOA, kamakwa site n'echiche nke microservice architecture).

Ndị obodo na ndị na-ere ahịa na-akwado ụkpụrụ ụlọ dabere na ọrụ. Nke a na-egosi ọnụnọ nke ọtụtụ ọmụmụ na asambodo, ụkpụrụ emepụtara nke ọma. Nke ikpeazụ gụnyere, dịka ọmụmaatụ, ụgbọ ala ọrụ ụlọ ọrụ a ma ama (ESB = ụgbọ ala ọrụ ụlọ ọrụ). N'otu oge ahụ, ESB bụ akpa sitere n'aka ndị na-ere ahịa; ọ bụchaghị na a ga-eji ya na SOA.

Ihe ewu ewu nke ụlọ ọrụ na-arụ ọrụ gbagoro na 2008, mgbe nke ahụ gasịrị, ọ malitere ibelata, nke ghọrọ ihe dị ịrịba ama karị mgbe ọbịbịa nke microservices (~ 2015).

nkwubi

Mgbe anyị tụlechara ohere nke ịhazi usoro ozi n'ụdị ọrụ na modul, m na-atụ aro ka emechaa gaa n'ihu na ụkpụrụ nke ụlọ ọrụ microservice ma tinye nlebara anya pụrụ iche na ọdịiche dị n'etiti ụlọ ọrụ microservice na ụlọ ọrụ dabere na akụkụ nke ọzọ.

Ịhọrọ ụdị ụkpụrụ ụlọ (akụkụ 2)

isi: www.habr.com

Tinye a comment