Nchọgharị ekesa: anyị mere ihe niile na-ezighi ezi

Rịba ama. ntụgharị asụsụ.: Onye edemede nke ihe a bụ Cindy Sridharan, onye injinia na imgix bụ ọkachamara na mmepe API na, karịsịa, nyocha microservice. N'ime ihe a, ọ na-ekerịta ọhụụ ya zuru oke banyere nsogbu ndị dị ugbu a na ngalaba nkesa nkesa, ebe, n'echiche ya, enweghi ngwá ọrụ dị irè n'ezie maka idozi nsogbu ndị dị egwu.

Nchọgharị ekesa: anyị mere ihe niile na-ezighi ezi
[Ihe atụ sitere na ihe ndi ozo gbasara nchụso ekesa.]

A kwenyere na ekesa tracing siri ike mejuputa, na nloghachi na ya dubious na kacha mma. Enwere ọtụtụ ihe kpatara ịchụ ntakiri ji enwe nsogbu, na-ekwukarị ọrụ dị n'ịhazi akụrụngwa sistemụ ọ bụla iji bufee ndị nkụnye eji isi mee kwesịrị ekwesị na arịrịọ ọ bụla. Ọ bụ ezie na nsogbu a dị, ọ dịghị ma ọlị nke a na-apụghị imeri emeri. Site n'ụzọ, ọ naghị akọwa ihe kpatara na ndị mmepe anaghị enwe mmasị ịchọta (ọbụlagodi mgbe ọ na-arụ ọrụ).

Isi ihe ịma aka na nchụso ekesa abụghị ịnakọta data, ịhazi usoro maka ikesa na iwepụta nsonaazụ, ma ọ bụ ikpebi mgbe, ebe, na otu esi eme nlele. Anaghị m agbalị iche n'echiche obere ihe nsogbu ndị a "nghọta nghọta" bụ, n'ezie, ezigbo teknụzụ na (ọ bụrụ na anyị na-atụle n'ezie Open Source) ụkpụrụ na protocol) ihe ịma aka ndọrọ ndọrọ ọchịchị nke kwesịrị imeri ka e wee chee na a ga-edozi nsogbu ndị a.

Otú ọ dị, ọ bụrụ na anyị na-eche na a na-edozi nsogbu ndị a niile, enwere ike dị elu na ọ dịghị ihe ọ bụla ga-agbanwe nke ọma na usoro nke njedebe onye ọrụ ahụmahụ. Nchọgharị nwere ike ọ gaghị abụ nke bara uru n'ọnọdụ nbibi a na-ahụkarị-ọbụlagodi mgbe ebufere ya.

Nchọpụta dị otú ahụ dị iche

Nchusa ekesa gụnyere ọtụtụ ihe dị iche iche:

  • ngwa ngwa na middleware na ngwaọrụ njikwa;
  • nnyefe onodu ekesa;
  • nchịkọta nke akara;
  • nchekwa nchekwa;
  • mmịpụta na anya ha.

Ọtụtụ okwu banyere ịchụ nta nkesa na-achọ ka a na-emeso ya dị ka ụdị ọrụ na-adịghị ahụkebe nke naanị nzube ya bụ inyere aka chọpụta usoro ahụ n'ụzọ zuru ezu. Nke a bụ n'ụzọ dị ukwuu n'ihi otu esi emepụta echiche gbasara nchụso ekesa n'akụkọ ihe mere eme. N'ime ndenye blọgụ, mere mgbe e meghere isi mmalite Zipkin, ekwuru ya ọ [Zipkin] na-eme Twitter ngwa ngwa. A kwalitekwara onyinye azụmaahịa mbụ maka ịchụ nta dịka Ngwa APM.

Rịba ama. ntụgharị asụsụ.: Iji mee ka ederede dịkwuo mfe nghọta, ka anyị kọwaa okwu abụọ bụ isi dịka Akwụkwọ ọrụ OpenTracing:

  • -adịru - isi mmewere nke ekesa tracing. Ọ bụ nkọwa nke ụfọdụ usoro ọrụ (dịka ọmụmaatụ, ajụjụ nchekwa data) nwere aha, oge mmalite na njedebe, mkpado, ndekọ na ọnọdụ.
  • Ọgbara na-enwekarị njikọ na ogologo oge ndị ọzọ, na-enye ohere ka ejikọta ọtụtụ span n'ime Chọpụta - anya nke ndụ nke arịrịọ ka ọ na-aga site na usoro ekesa.

Usoro nwere data bara uru nke ukwuu nke nwere ike inye aka na ọrụ ndị dị ka nnwale mmepụta, nnwale mgbake ọdachi, nnwale injection njehie, wdg. N'ezie, ụfọdụ ụlọ ọrụ ejirila tracing maka ebumnuche ndị yiri ya. Ka anyị malite na nnyefe ọnọdụ gburugburu ụwa nwere ihe ndị ọzọ ma e wezụga ịkwaga ogologo oge na sistemụ nchekwa:

  • Dịka ọmụmaatụ, Uber na -eji na-achọpụta nsonaazụ iji mara ọdịiche dị n'etiti okporo ụzọ nnwale na okporo ụzọ mmepụta.
  • Facebook na -eji Chọpụta data maka nyocha ụzọ dị oke mkpa yana maka mgbanwe okporo ụzọ n'oge ule mgbake ọdachi mgbe niile.
  • Na-elekọta mmadụ netwọk na-emetụta Akwụkwọ ndetu Jupyter na-enye ndị mmepe ohere ịme ajụjụ aka ike na nsonaazụ ọchụchọ.
  • Ndị na-eso ụzọ LDFI (Ntụnye ọdịda ọdịda nke ahịrị) jiri ekesa akara maka nnwale na njehie injection.

Ọnweghị nke ọ bụla n'ime nhọrọ ndị edepụtara n'elu metụtara kpamkpam na ọnọdụ ahụ idozi, n'oge nke engineer na-agbalị idozi nsogbu ahụ site n'ile anya na nchọta.

Mgbe ọ bịara ma rute n'edemede nbibi, isi interface ka bụ eserese ahụ nlele anya (n'agbanyeghị na ụfọdụ na-akpọkwa ya "Gantt chaatị" ma ọ bụ "eserese mmiri mmiri"). N'okpuru nlele anya я Echere m Ogologo oge niile na metadata so ya na-emekọ ihe nchọta ahụ. Usoro ọ bụla na-emepe emepe, yana usoro ịchụ nta azụmahịa ọ bụla, na-enye a nlele anya interface onye ọrụ maka ịhụ anya, nkọwa na nzacha akara.

Nsogbu dị na sistemụ nchụso niile m hụworo ugbu a bụ nke si na ya pụta nlegharị anya (nlele anya) fọrọ nke nta ka ọ bụrụ kpamkpam na-egosipụta njirimara nke usoro mmepụta ihe. Ọbụlagodi mgbe a na-atụpụta ihe ngosi ndị ọzọ: heatmaps, topologies ọrụ, histogram latency, ha ka na-agbadata n'ikpeazụ. nlele anya.

N'oge gara aga I mere mkpesa na ọtụtụ UI/UX na-achọ "ihe ọhụrụ" yiri ka ọ bụ naanị ya na-agbanye metadata agbakwunyere na trace, na-etinye ozi na ha na kadinality dị elu (oke kadinality) ma ọ bụ na-enye ikike ịkụda ala n'ime ogologo oge ma ọ bụ gbaa ajụjụ inter- na intra-trace... N'ime ya nlele anya na-anọgide bụ isi ihe nhụta ihe. Ọ bụrụhaala na ọnọdụ a na-aga n'ihu, nchụso nkesa ga-abụ (nke kachasị mma) na-ewere ọnọdụ 4 dị ka ngwá ọrụ nbibi, mgbe metrics, logs na stack traces, na nke kachasị njọ, ọ ga-abụ ihe efu ego na oge.

Nsogbu na traceview

Nzube nlele anya - nye nkọwa zuru oke nke mmegharị nke otu arịrịọ n'ofe akụkụ niile nke sistemụ kesara nke metụtara ya. Ụfọdụ usoro nchụso ndị ọzọ dị elu na-enye gị ohere ịkụda n'ime ogologo oge n'otu n'otu wee lelee ndakpọ ka oge na-aga n'ime otu usoro (mgbe span nwere oke ọrụ).

Ihe bụ isi nke microservices architecture bụ echiche na nhazi nhazi na-eto eto na mkpa nke ụlọ ọrụ. Ndị na-akwado microservices na-arụ ụka na ikesa ọrụ azụmaahịa dị iche iche n'ime ọrụ nke ọ bụla na-enye ohere ka ndị otu mmepe nweere onwe ha jikwaa usoro ndụ niile nke ọrụ dị otú ahụ, na-enye ha ikike iwulite, nwalee na ibuga ọrụ ndị ahụ n'onwe ha. Otú ọ dị, adịghị ike nke nkesa a bụ mfu nke ozi gbasara otu ọrụ ọ bụla si emekọrịta ihe na ndị ọzọ. N'ọnọdụ ndị dị otú ahụ, nchụsa nkesa ekesa na-ekwu na ọ bụ ngwá ọrụ dị mkpa maka ya idozi mgbagwoju anya mmekọrịta n'etiti ọrụ.

Ọ bụrụ n'ezie usoro kesara dị mgbagwoju anya, mgbe ahụ ọ dịghị otu onye nwere ike idobe ya n'isi ya zuru ezu foto. N'ezie, ịmepụta ngwá ọrụ dabere n'echiche na ọ ga-ekwe omume bụ ihe na-emegide ụkpụrụ (ụzọ na-adịghị mma na nke na-adịghị arụpụta ihe). Dị ka o kwesịrị, debugging chọrọ ngwá ọrụ na-enyere aka warara mpaghara ọchụchọ gị, ka ndị injinia wee nwee ike ilekwasị anya na mpaghara nke akụkụ (ọrụ / ndị ọrụ / ndị ọbịa, wdg) dabara na ọnọdụ nsogbu a na-atụle. Mgbe ị na-achọpụta ihe kpatara ọdịda, a chọghị ka ndị injinia ghọta ihe mere n'oge ọrụ niile n'otu oge, ebe ọ bụ na ihe dị otú ahụ a chọrọ ga-emegide nnọọ echiche nke microservice architecture.

Agbanyeghị, traceview bụ ya bu Nke a. Ee, ụfọdụ sistemụ nchụso na-enye nlegharị anya nhụta abịakọrọ mgbe ọnụọgụ nke ogologo dị na traktị ahụ buru ibu nke na enweghị ike igosipụta ha n'otu nhụta. Otú ọ dị, n'ihi nnukwu ego nke ozi dị ọbụna na ndị dị otú ahụ a yipụ-ala visualization, engineer ka amanye “Sift” ya, jiri aka na-ebelata nhọrọ ahụ ka ọ bụrụ ọrụ nke bụ isi mmalite nke nsogbu. N'ụzọ dị mwute, na mpaghara a, igwe na-adị ngwa ngwa karịa ụmụ mmadụ, na-enweghi ike ime njehie, na nsonaazụ ha na-enwe ike ikwugharị.

Ihe ọzọ mere m ji chee na traceview adịghị mma bụ n'ihi na ọ dịghị mma maka nbibi na-akpata hypothesis. Na isi ya, debugging bụ ntughari usoro na-amalite site na nkwupụta, na-esote nkwenye nke nyocha dị iche iche na eziokwu ndị e nwetara site na usoro ahụ tinyere vectors dị iche iche, nkwubi okwu / nkwubi okwu na nyocha ọzọ nke eziokwu nke echiche ahụ.

Ohere ngwa ngwa na ọnụ ala nwale echiche na imeziwanye ihe nlere anya nke uche ya bụ nkume nkuku debugging Ngwá ọrụ nbipu ọ bụla kwesịrị ịbụ mmekọrịta ma mee ka oghere ọchụchọ dị warara ma ọ bụ, n'ọnọdụ nke ndu ụgha, kwe ka onye ọrụ laghachi azụ ma lekwasị anya na mpaghara dị iche iche nke usoro ahụ. Ngwá ọrụ zuru oke ga-eme nke a nke ọma, ozugbo na-adọta uche onye ọrụ na mpaghara nsogbu nwere ike.

Ewoo, nlele anya enweghị ike ịkpọ ngwá ọrụ nwere interface mmekọrịta. Ihe kacha mma ị nwere ike ịtụ anya mgbe ị na-eji ya bụ ịchọta ụfọdụ isi iyi nke na-abawanye latency wee lelee mkpado na ndekọ niile enwere ike jikọta ya. Nke a anaghị enyere onye injinia aka ịmata ụkpụrụ na okporo ụzọ, dị ka nkọwapụta nke nkesa igbu oge, ma ọ bụ chọpụta njikọ dị n'etiti nha dị iche iche. Nleba anya n'ozuzu ya nwere ike inye aka gbachitere ụfọdụ nsogbu ndị a. N'ezie, e nwere ihe atụ nyocha na-aga nke ọma site na iji mmụta igwe na-achọpụta ihe na-adịghị mma ma chọpụta obere mkpado nwere ike jikọta ya na omume ọjọọ. Agbanyeghị, ahụbeghị m nhụta dị egwu nke mmụta igwe ma ọ bụ nchoputa ngwuputa data etinyere na ogologo oge dị iche na nke traceview ma ọ bụ DAG (graphed acyclic graph).

Ogologo oge dị oke ala

Nsogbu bụ isi na traceview bụ nke ahụ ogologo bụ oke ala-larịị primitives maka ma latency analysis na mgbọrọgwụ ihe nyocha. Ọ dị ka ịkọwapụta iwu nhazi onye ọ bụla iji gbalịa dozie ihe dị iche, n'ịmara na e nwere ngwaọrụ dị elu dị elu dị ka backtrace nke dị mfe iji rụọ ọrụ.

Ọzọkwa, m ga-enwere onwe nke ikwupụta ihe ndị a: n'ezie, anyị adịghị mkpa foto zuru oke mere n'oge usoro ndụ nke arịrịọ, nke a na-anọchi anya ya na ngwa nchọta ọgbara ọhụrụ. Kama, a chọrọ ụfọdụ ụdị abstraction dị elu nke nwere ozi gbasara ihe agahie ụzọ (dị ka azụ azụ), yana ụfọdụ ihe gbara ya gburugburu. Kama ilele akara niile, ọ masịrị m ịhụ ya akụkụ nke, ebe ihe na-adọrọ mmasị ma ọ bụ ihe pụrụ iche na-eme. Ka ọ dị ugbu a, a na-eji aka na-eme ọchụchọ ahụ: onye injinia na-enweta akara ahụ ma na-enyocha onwe ya n'ogologo na-achọ ihe na-adọrọ mmasị. Ụzọ nke ndị mmadụ na-ele anya n'ọgbara n'otu n'otu na-atụ anya ịchọpụta ọrụ enyo adịghị emetụta ma ọlị (karịsịa mgbe ha ga-aghọta nke ọma metadata nke etinyere n'ụdị dị iche iche, dị ka ID span, aha usoro RPC, ogologo oge. 'a, ndekọ, mkpado, wdg).

Nhọrọ nke traceview

Nsonaazụ nchọta kacha baa uru mgbe enwere ike ịhụ ya n'ụzọ na-enye nghọta na-enweghị isi banyere ihe na-eme n'akụkụ akụkụ nke sistemu ejikọtara ọnụ. Ruo mgbe nke a mere, usoro nbipu na-anọgide n'ụzọ dị ukwuu inert ma dabere n'ikike onye ọrụ na-achọpụta njikọ ziri ezi, lelee akụkụ ziri ezi nke usoro ahụ, ma ọ bụ tinye akụkụ nke mgbagwoju anya ọnụ - na-emegide ya. ngwá, na-enyere onye ọrụ aka ịmepụta echiche ndị a.

Abụghị m onye mmebe anya ma ọ bụ ọkachamara UX, mana na ngalaba na-esote, achọrọ m ikesa echiche ole na ole gbasara ihe ọhụụ ndị a nwere ike ịdị.

Gbado anya na ọrụ akọwapụtara

N'otu oge mgbe ụlọ ọrụ na-agbakọta gburugburu echiche SLO (ebumnobi ọkwa ọrụ) na SLI (ihe ngosi ọkwa ọrụ), ọ dị ka ihe ezi uche dị na ya na ndị otu n'otu n'otu kwesịrị ibute ụzọ n'ịhụ na ọrụ ha dabara na ebumnuche ndị a. Ọ na-esote nke ahụ dabere ọrụ ikiri anya kacha mma maka otu dị otú ahụ.

Usoro, karịsịa na-enweghị nlele, bụ nnukwu ihe ọmụma gbasara akụkụ nke ọ bụla nke usoro ekesa. Enwere ike ịnye ozi a na nhazi aghụghọ nke ga-enye ndị ọrụ dabere ọrụ Enwere ike ịmata ha tupu oge eruo - ọbụlagodi tupu onye ọrụ eleba anya na akara ndị a:

  1. Eserese nkesa latency naanị maka arịrịọ ndị ama ama (arịrịọ nke ukwuu);
  2. Eserese nke nkesa igbu oge maka ikpe mgbe emezughị ebumnuche SLO ọrụ;
  3. Mkpado kachasị "nkịtị", "mmasị" na "dị egwu" na ajụjụ na-abụkarị na-ugboro ugboro;
  4. ndakpọ latency maka ikpe ebe adabere ọrụ anaghị emezu ebumnuche SLO ha;
  5. Mmebi latency maka ọrụ mgbada dị iche iche.

A naghị aza ụfọdụ ajụjụ ndị a site na metrik arụnyere n'ime ya, na-amanye ndị ọrụ inyocha ogologo oge. N'ihi ya, anyị nwere usoro na-adịghị mma nke onye ọrụ.

Nke a na-ewelite ajụjụ a: kedu maka mmekọrịta dị mgbagwoju anya n'etiti ọrụ dị iche iche nke otu dị iche iche na-achịkwa? Ọ bụghị ya nlele anya a naghị ewere ya dị ka ngwá ọrụ kachasị mma iji gosipụta ọnọdụ dị otú ahụ?

Ndị mmepe ekwentị, ndị nwe ọrụ enweghị steeti, ndị nwe ọrụ steeti ejirila (dị ka ọdụ data) na ndị nwe ikpo okwu nwere ike ịmasị ihe ọzọ. ngosi usoro nkesa; nlele anya bụ ihe ngwọta zuru oke maka mkpa ndị a dị iche iche. Ọbụna n'ime ụlọ ọrụ microservice dị mgbagwoju anya, ndị nwe ọrụ anaghị achọ ihe ọmụma miri emi nke ihe karịrị ọrụ abụọ ma ọ bụ atọ na elu na ala. N'ezie, n'ọtụtụ ọnọdụ, naanị ndị ọrụ kwesịrị ịza ajụjụ gbasara oke set nke ọrụ.

Ọ dị ka ilele obere ngalaba ọrụ site na iko na-ebuli elu maka inyocha ya. Nke a ga-enye onye ọrụ ohere ịjụ ajụjụ ndị ọzọ dị mkpa gbasara mmekọrịta dị mgbagwoju anya n'etiti ọrụ ndị a na ndabere ha ozugbo. Nke a yiri azụ azụ na ụwa ọrụ, ebe injinia maara na ezighi ezi, ma nweekwa nghọta ụfọdụ nke ihe na-eme na ọrụ gbara ya gburugburu ịghọta ihe mere.

Ụzọ m na-akwalite bụ kpọmkwem ihe dị iche na nke elu-ala, traceview nke dabere, ebe nyocha na-amalite site na nchọta niile wee jiri nwayọọ nwayọọ na-arụ ọrụ ruo n'ókè nke onye ọ bụla. N'ụzọ dị iche, ụzọ mgbago elu na-amalite site n'inyocha obere mpaghara dị nso na ihe nwere ike ịkpata ihe ahụ merenụ, wee gbasaa oghere ọchụchọ dị ka ọ dị mkpa (na ike nke iwebata ìgwè ndị ọzọ iji nyochaa ọrụ dịgasị iche iche). Ụzọ nke abụọ ka mma maka ịnwale echiche mbụ ngwa ngwa. Ozugbo enwetara nsonaazụ doro anya, ọ ga-ekwe omume ịga n'ihu na nyocha gbadoro anya na nke zuru oke.

Ịmepụta topology

Echiche ndị akọwapụtara ọrụ nwere ike ịba uru nke ukwuu ma ọ bụrụ na onye ọrụ maara nke otu ọrụ ma ọ bụ otu ọrụ na-ahụ maka ịba ụba latency ma ọ bụ ịkpata njehie. Otú ọ dị, n'ime usoro mgbagwoju anya, ịchọpụta ọrụ mmejọ ahụ nwere ike ịbụ ọrụ na-adịghị mkpa n'oge ọdịda, karịsịa ma ọ bụrụ na enweghị ozi njehie sitere na ọrụ ahụ.

Iwulite topology ọrụ nwere ike ịbụ nnukwu enyemaka n'ịchọpụta nke ọrụ na-enwe mmụba na ọnụego njehie ma ọ bụ mmụba na latency nke na-eme ka ọrụ ahụ weda nke ọma. Mgbe m na-ekwu maka iwulite topology, anaghị m ekwu map ọrụ, Na-egosipụta ọrụ ọ bụla dị na sistemụ ma mara ya map nke ije n'ụdị kpakpando ọnwụ. Echiche a adịghị mma karịa traceview dabere na eserese acyclic eduzi. Kama ọ ga-amasị m ịhụ topology ọrụ dynamically emepụtara, dabere n'ụfọdụ njirimara dị ka ọnụego njehie, oge nzaghachi, ma ọ bụ ihe ọ bụla akọwapụtara onye ọrụ na-enyere aka dokwuo anya na ọnọdụ ahụ site na iji ọrụ enyo enyo.

Ka anyị were ihe atụ. Ka anyị were echiche saịtị akụkọ nwere echiche. Ọrụ ibe ụlọ ( ihu ihu) na-agbanwe data na Redis, yana ọrụ nkwanye, yana ọrụ mgbasa ozi yana ọrụ vidiyo. Ọrụ vidiyo na-ewe vidiyo sitere na S3 yana metadata sitere na DynamoDB. Ọrụ nkwanye ahụ na-enweta metadata sitere na DynamoDB, na-ebu data sitere na Redis na MySQL, wee dee ozi na Kafka. Ọrụ mgbasa ozi na-enweta data sitere na MySQL wee dee ozi na Kafka.

N'okpuru ebe a bụ nkọwapụta atụmatụ nke topology a (ọtụtụ mmemme mbugharị azụmahịa na-ewulite topology). Ọ nwere ike ịba uru ma ọ bụrụ na ịchọrọ ịghọta ndabere ọrụ. Otú ọ dị, n'oge idozi, mgbe ụfọdụ ọrụ (sịnụ, ọrụ vidiyo) gosipụtara oge nzaghachi na-abawanye, ụdị topology adịghị aba uru.

Nchọgharị ekesa: anyị mere ihe niile na-ezighi ezi
Eserese ọrụ nke saịtị akụkọ nwere echiche

Eserese dị n'okpuru ga-aka mma. Enwere nsogbu na ọrụ ahụ (Video) egosiri na etiti. Onye ọrụ na-achọpụta ya ozugbo. Site na nhụta a, ọ bịara doo anya na ọrụ vidiyo na-arụ ọrụ na-adịghị mma n'ihi mmụba nke oge nzaghachi S3, nke na-emetụta ọsọ ọsọ nke akụkụ nke isi ibe.

Nchọgharị ekesa: anyị mere ihe niile na-ezighi ezi
Topology dị egwu na-egosipụta naanị ọrụ "mmasị".

Topologies emepụtara na-agbanwe agbanwe nwere ike ịrụ ọrụ nke ọma karịa maapụ ọrụ kwụ ọtọ, ọkachasị n'ime akụrụngwa na-agbanwe, akụrụngwa na-akpachapụ anya. Ikike iji tụnyere na iche ọrụ topologies na-enye onye ọrụ ohere ịjụ ajụjụ ndị dị mkpa karị. Ajụjụ ndị ọzọ ziri ezi banyere usoro ahụ nwere ike ime ka ọ ghọtakwuo ka usoro ahụ si arụ ọrụ.

Ngosipụta atụnyere

Ọhụụ ọzọ bara uru ga-abụ ngosipụta atụnyere. Ugbu a akara adịghị adabara maka ntụnyere n'akụkụ n'akụkụ, yabụ ntụnyere na-abụkarị ogologo. Na isi echiche nke isiokwu a bụ kpọmkwem na ogologo oge dị oke ala iji wepụ ozi kachasị bara uru na nsonaazụ ọchụchọ.

Tụnyere akara abụọ anaghị achọ nhụta ọhụụ ọhụrụ. N'ezie, ihe dị ka histogram nke na-anọchite anya otu ozi dị ka nlele trace zuru ezu. N'ụzọ dị ịtụnanya, ọbụlagodi usoro a dị mfe nwere ike iweta ọtụtụ mkpụrụ karịa naanị ịmụ akara abụọ iche iche. Ọbụna ike ka ukwuu ga-ekwe omume jiri anya nke uche hụ ntụnyere akara Na mkpokọta. Ọ ga-aba uru nke ukwuu ịhụ ka mgbanwe nhazi nchekwa data ewesara n'oge na-adịbeghị anya iji mee ka GC (nchịkọta mkpofu) si emetụta oge nzaghachi nke ọrụ mgbada n'ọtụtụ awa. Ọ bụrụ na ihe m na-akọwa ebe a dị ka nyocha A/B nke mmetụta mgbanwe akụrụngwa n'ọtụtụ ọrụ na-eji nsonaazụ ọchụchọ, mgbe ahụ ị nọghị anya n'eziokwu.

nkwubi

Anaghị m agbagha uru nke ịchụ nta ahụ n'onwe ya. Ekwenyere m n'ezie na ọ nweghị ụzọ ọzọ maka ịnakọta data dị ka ọgaranya, ihe kpatara na ọnọdụ dị ka nke dị na nchọta. Agbanyeghị, ekwenyere m na usoro nyocha niile na-eji data a eme nke ọma. Ọ bụrụhaala na nchọgharị ngwaọrụ na-anọgide na-arapara n'ahụ ihe ngosi traceview, ha ga-enwe oke n'ikike ha iji nweta ozi bara uru nke nwere ike isi na data dị na nchọta ndị ahụ. Tụkwasị na nke ahụ, enwere ihe ize ndụ nke ịmalite ịmepụta ihe na-adịghị mma na nke na-enweghị uche nke ga-egbochi ike onye ọrụ iji dozie njehie na ngwa ahụ.

Imebi sistemu dị mgbagwoju anya, ọbụlagodi na ngwaọrụ kachasị ọhụrụ, siri ike nke ukwuu. Ngwa kwesịrị inyere onye nrụpụta aka ịhazi ma nwalee echiche, na-arụsi ọrụ ike na-enye ozi dị mkpa, na-achọpụta ndị na-apụ apụ na nrịbama atụmatụ na nkesa nke igbu oge. Maka ịchụ nta ka ọ bụrụ ngwá ọrụ nhọrọ maka ndị mmepe mgbe ị na-eme nchọpụta nsogbu mmepụta ihe ma ọ bụ dozie nsogbu ndị na-agafe ọtụtụ ọrụ, a na-achọ interface onye ọrụ mbụ na ọhụụ nke dabara na ụdị echiche nke ndị mmepe na-emepụta ma na-arụ ọrụ ndị ahụ.

Ọ ga-ewe mgbalị dị ukwuu nke uche iji chepụta usoro nke ga-anọchi anya akara ngosi dị iche iche dị na nsonaazụ ọchụchọ n'ụzọ a na-eme ka ọ dị mfe nyocha na ntinye aka. Ikwesiri iche echiche banyere otu esi esi abtract topology sistemu n'oge debugging n'ụzọ na-enyere onye ọrụ aka imeri ntụpọ kpuru na-eleghị anya n'otu n'otu ma ọ bụ ogologo oge.

Anyị chọrọ ezigbo abstraction na ike nhazi (karịsịa na UI). Ndị ga-adaba nke ọma na usoro nbibi nke na-ebute hypothesis ebe ị nwere ike ịjụ ajụjụ ugboro ugboro wee nwalee echiche. Ha agaghị edozi nsogbu niile a na-ahụ anya na-akpaghị aka, mana ha ga-enyere ndị ọrụ aka ịmụba nghọta ha ma chepụta ajụjụ ndị ka mma. M na-akpọ maka ụzọ nchebara echiche na nke ọhụrụ maka ịhụ ihe. Enwere ezigbo atụmanya ebe a ịgbasa ọhụụ.

PS sitere na onye ntụgharị

Gụọkwa na blọọgụ anyị:

isi: www.habr.com

Tinye a comment