Ka whakamahia e matou te hoahoanga microservice i roto i a maatau kaupapa. I te wa e pa ana nga mahi, he nui te wa ka pau ki te tirotiro me te tarai i nga raarangi. I te wa e takiuru ana i nga wa o nga mahi takitahi ki te konae rangitaki, he uaua ki te mohio he aha te take i tono ai enei mahi, ki te whai i te raupapa o nga mahi, i te huringa wa ranei o tetahi mahi e pa ana ki tetahi atu i roto i nga ratonga rereke.
Hei whakaiti i nga mahi a-ringa, i whakatau matou ki te whakamahi i tetahi o nga taputapu rapu. Mo te pehea me te take ka taea e koe te whakamahi i te tirotiro me te pehea i mahia ai e matou, ka korerohia i roto i tenei tuhinga.
He aha nga raruraru ka taea te whakaoti ma te whai
Rapua nga paatete mahi i roto i te ratonga kotahi me te rakau whakamate katoa i waenga i nga ratonga whakauru katoa. Hei tauira:
He maha nga waea poto poto i waenga i nga ratonga, hei tauira, ki te geocoding, ki te putunga raraunga ranei.
He roa te I/O e tatari ana, penei i te whakawhiti whatunga, te panui kōpae ranei.
Wero raraunga roa.
Nga mahi roa e hiahia ana i te cpu.
Ko nga waahanga o te waehere kaore e hiahiatia kia whiwhi i te hua whakamutunga ka taea te tango, te whakaroa ranei.
Ka tino marama ki te raupapa he aha te mea e kiia ana me te aha ka puta ina mahia te mahi.
Ka taea te kite, hei tauira, i tae mai te Tono ki te ratonga WS -> te ratonga WS i tapirihia nga raraunga ma te ratonga R -> ka tukuna he tono ki te ratonga V -> te ratonga V i utaina te maha o nga raraunga mai i te R ratonga -> i haere ki te ratonga P -> i haere ano te ratonga P ki te ratonga R -> ratonga V i warewarehia te hua ka haere ki te ratonga J -> katahi ka whakahokia mai te whakautu ki te ratonga WS, i te haere tonu ki te tatau i tetahi atu mea i roto i te papamuri.
Kaore he tohu penei, he tuhinga taipitopito ranei mo te mahi katoa, he tino uaua ki te mohio ki nga mea e tupu ana ina titiro koe ki te waehere mo te wa tuatahi, a ka marara te waehere ki nga ratonga rereke ka huna i muri i te paihere o nga ipu me nga atanga.
Kohikohi korero mo te rakau whakamate mo te wetewete i muri mai. I ia wahanga o te mahi, ka taea e koe te taapiri i nga korero ki te tohu e waatea ana i tenei waahanga katahi ka mohio he aha nga raraunga whakauru i arai atu ki tetahi ahuatanga rite. Hei tauira:
ID Kaiwhakamahi
Ngā Tika
Momo tikanga kua tohua
He hapa te takiuru, te mahi ranei
Te huri i nga tohu ki roto i te waahanga o nga inenga me etahi atu tātaritanga i roto i te ahua o nga inenga.
He aha te tohu ka taea te takiuru. Awha
I roto i te whaiwhai i reira ko te ariā o te whanganga, he tairitenga tenei o te kotahi poro, ki te papatohu. He:
Ingoa, ko te ingoa o te tikanga i mahia
Ko te ingoa o te ratonga i hangaia ai te mokowhiti
Nou ake ID ahurei
Ko etahi momo korero meta i roto i te ahua o te matua / uara kua uru ki roto. Hei tauira, ko nga tawhā tikanga, ko te tikanga ranei i mutu ki te hapa, kaore ranei
Nga wa tiimata me te mutunga mo tenei waa
ID atanga matua
Ka tukuna atu ia whanganga ki te kaikohi mokowhiti kia penapenahia ki te paataka mo te arotake a muri ake ina oti ana tana mahi. I nga ra kei mua, ka taea e koe te hanga rakau mo nga waahi katoa ma te hono ma te id matua. I te wa e wetewete ana, ka kitea e koe, hei tauira, nga waahi katoa i roto i etahi ratonga i roa ake i te wa roa. I tua atu, ma te haere ki tetahi waahi motuhake, tirohia te rakau katoa o runga me raro o tenei whanganga.
Opentrace, Jagger me te pehea i whakatinanahia ai mo a maatau kaupapa
He paerewa noa tuwheratanga, e whakaatu ana me pehea me te aha me kohia, me te kore e herea ma te whai ki tetahi whakatinanatanga motuhake i roto i tetahi reo. Hei tauira, i Java, ko nga mahi katoa me nga tohu ka mahia ma te Opentrace API noa, a, i raro i a ia, hei tauira, ko Jaeger, he mahinga taunoa kore ranei e kore e taea te huna.
Kei te whakamahi matou Hoko hei whakatinanatanga o Opentrace. He maha nga waahanga kei roto:
Ko te Jaeger-agent he kaihoko a-rohe e mau tonu ana ki ia miihini me nga ratonga ka uru ki roto i te tauranga taunoa o te rohe. Mena karekau he kaihoko, ka monokia nga tohu o nga ratonga katoa kei runga i tenei miihini
Jaeger-collector - ka tukuna e nga kaihoko katoa nga tohu kua kohia ki a ia, ka waiho ki roto i te papaa raraunga kua tohua
Ko te papaunga raraunga ko ta ratou cassandra pai ake, engari ka whakamahia e matou te elasticsearch, he whakatinanatanga mo etahi atu papaaarangi e rua me te whakatinanatanga mahara-kore e penapena tetahi mea ki te kōpae.
Ko te Jaeger-query he ratonga ka haere ki te paataka raraunga me te whakahoki i nga tohu kua kohia mo te tātari
He atanga tukutuku a Jaeger-ui mo te rapu me te tiro tohu, ka haere ki te jaeger-query
Ko tetahi waahanga motuhake ka kiia ko te whakatinanatanga o te opentrace jaeger mo nga reo motuhake, ka tukuna atu nga waahanga ki te jaeger-agent. Te hono a Jagger ki Java ka heke iho ki te whakatinana i te atanga io.opentracing.Tracer, ka mutu nga tohu katoa ka rere ki te tino kaihoko.
Mo te waahanga puna, ka taea e koe te hono opentracing-puna-kapua-starter me te whakatinanatanga mai i a Jaeger opentracing-spring-jaeger-cloud-starter ka whirihora aunoa i te rapu mo nga mea katoa e haere ana i roto i enei waahanga, hei tauira nga tono http ki nga kaiwhakahaere, nga tono ki te papaaarangi ma te jdbc, etc.
Nga tohu takiuru ki Java
I tetahi waahi i te taumata o runga, me hanga te Span tuatahi, ka taea te mahi aunoa, hei tauira, na te kaiwhakahaere o te puna ka tae mai he tono, ma te ringaringa ranei mena kaore he. Kātahi ka tukuna mā te Whānui i raro nei. Mena kei te pirangi tetahi tikanga i raro nei ki te taapiri i te Span, ka tangohia te ActiveSpan o naianei mai i te Scope, ka hangaia he Span hou me te kii ko tona matua ko te ActiveSpan ka puta, ka whakahohe i te Span hou. I te wa e waea ana ki nga ratonga o waho, ka tukuna atu ki a raatau te waahi hohe o naianei, ka hangaia e aua ratonga nga waahanga hou me te tohutoro ki tenei waahanga.
Ka haere nga mahi katoa ma te tauira Tracer, ka taea e koe te tiki ma te tikanga DI, GlobalTracer.get ranei () hei taurangi o te ao ki te kore e mahi te tikanga DI. Ma te taunoa, mena kaore ano kia arawhitihia te kaiwhai, ka hoki mai a NoopTracer kaore he mahi.
I tua atu, ka whiwhihia te whānuitanga o naianei mai i te kaiwhaiwhai ma te ScopeManager, ka hangaia he awhi hou mai i te waa o naianei me te herenga o te whanganga hou, katahi ka katia te Whanui i hangaia, ka kati i te whanga i hangaia ka whakahoki i te Mahinga o mua ki te ahua kaha. Ka herea te awhe ki tetahi miro, no reira, i te wa o te hotaka miro-maha, kaua e wareware ki te whakawhiti i te mokowhiti kaha ki tetahi atu miro, mo te whakahohe ano i te Awhe o tetahi atu miro e pa ana ki tenei whanganga.
Mo nga hotaka miro-maha, kei reira ano hoki a TracedExecutorService me nga takai rite e tuku aunoa ana i te waa o naianei ki te miro ina whakarewahia nga mahi tukutahi:
private ExecutorService executor = new TracedExecutorService(
Executors.newFixedThreadPool(10), GlobalTracer.get()
);
HttpClient httpClient = new TracingHttpClientBuilder().build();
Nga raruraru i pa ki a matou
Ko nga pini me te DI e kore e mahi i nga wa katoa mena kaore i te whakamahia te kaiwhaiwhai ki tetahi ratonga, waahanga ranei, na Waea Aunoa Kare pea a Tracer e mahi, me whakamahi koe i te GlobalTracer.get().
Karekau nga korero e mahi mena ehara i te waahanga, ratonga ranei, mena ka karangahia te tikanga mai i tetahi tikanga tata o te akomanga kotahi. Me tupato koe ki te tirotiro he aha te mahi me te whakamahi i nga mahi a-ringa ki te kore a @Traced e mahi. Ka taea hoki e koe te taapiri i tetahi taapiri taapiri mo nga korero java, katahi ka mahi ki nga waahi katoa.
Whakamātauria ki ngā rauemi e kore e mahi i roto i te groovy, me whakamahi koe tamata mutunga.
Me whai i ia ratonga tana ake puna.application.ingoa i raro i nga tohu ka tuhia. He aha te ingoa motuhake mo te hoko me te whakamatautau, kia kore ai e pokanoa ki a raatau.
Mena kei te whakamahi koe i te GlobalTracer me te tomcat, na nga ratonga katoa e whakahaere ana i tenei tomcat kotahi te GlobalTracer, no reira he ingoa ratonga o ratou katoa.
A, no te taapiri i nga tohu ki tetahi tikanga, me tino mohio koe kaore e karangahia i nga wa maha i roto i te kopae. He mea tika ki te taapiri i tetahi tohu noa mo nga waea katoa, e whakamana ana i te waa mahi katoa. Ki te kore, ka hanga he taumahatanga taikaha.
Kia tae ki te jaeger-ui, he nui rawa nga tono i tukuna mo te maha o nga tohu, a na te mea kaore ratou i tatari mo te whakautu, ka mahia ano e ratou. Ko te mutunga mai, ka timata a jaeger-query ki te kai i te maha o te mahara me te puhoi te rapa. I awhinahia ma te whakaara ano i te patai-jaeger
Te tūponotanga ka tātari i ngā tohu me ētahi tūponotanga.
Te whakatau i te whakawhāiti i te maha o nga tohu mo ia hekona. Ka taea e koe te whirihora i enei tautuhinga i runga i te kiritaki, i runga i te kaihoko-jaeger, i runga ranei i te kaikohi. Inaianei ka whakamahia e matou te const 1 i roto i te taapu utu, na te mea kaore i te maha nga tono, engari ka roa te waa. I te wa kei te heke mai, mena ka nui te taumaha o te punaha, ka taea e koe te whakawhāiti.
Mena ka whakamahi koe i te cassandra, ma te taunoa ka penapena nga tohu mo nga ra e rua. Kei te whakamahi matou kirihipi me nga tohu ka rongoa mo nga wa katoa kaore e mukua. Ka hangaia he tohu motuhake mo ia ra, hei tauira jaeger-service-2019-03-04. I te wa kei te heke mai, me whirihora e koe te horoi aunoa o nga tohu tawhito.
Hei tiro i nga tohu ka hiahia koe:
Tīpakohia te ratonga e hiahia ana koe ki te tarai i nga tohu, hei tauira, tomcat7-taunoa mo te ratonga e rere ana i te tomcat me te kore e whai ingoa ake.
Na ka kowhiri i te mahi, te waahi wa me te wa mahi iti rawa, hei tauira mai i te 10 hēkona, kia roa noa nga mahi whakamate.
Haere ki tetahi o nga tohu ka kite i nga mea e puhoi haere ana i reira.
Ano, ki te mohiotia etahi tono id, katahi ka kitea e koe he tohu ma tenei id ma te rapu tohu, mena kua uru tenei id ki te waahi tohu.