Bróicéirí teachtaireachta a thuiscint. Ag foghlaim mheicnic na dteachtaireachtaí le ActiveMQ agus Kafka. Caibidil 1

Dia duit gach duine!

Thosaigh sé ag aistriú leabhar beag:
«Bróicéirí Teachtaireachta a thuiscint«
údar: Jakub Korab, foilsitheoir: O'Reilly Media, Inc., dáta foilsithe: Meitheamh 2017, ISBN: 9781492049296.

Ón réamhrá go dtí an leabhar:
"... Múinfidh an leabhar seo duit conas smaoineamh ar chórais teachtaireachtaí bróicéireachta trí dhá theicneolaíocht bróicéireachta a bhfuil an-tóir orthu a chur i gcomparáid agus a chodarsnacht: Apache ActiveMQ agus Apache Kafka. Tabharfaidh sé breac-chuntas ar chásanna úsáide agus dreasachtaí forbartha a thug ar a bhforbróirí cur chuige an-difriúil a ghlacadh maidir leis an réimse céanna teachtaireachtaí bróicéireachta idir córais. Breathnóimid ar na teicneolaíochtaí seo ón talamh aníos agus leagfaimid béim ar an tionchar a bhíonn ag roghanna dearaidh éagsúla ar an mbealach. Gheobhaidh tú tuiscint dhomhain ar an dá tháirge, tuiscint ar conas ba cheart agus nár cheart iad a úsáid, agus tuiscint ar cad ba cheart a bheith ag faire amach dó agus teicneolaíochtaí teachtaireachtaí eile á mbreithniú agat amach anseo. ... "

Páirteanna aistrithe go dtí seo:
Caibidil 1 Réamhrá
Caibidil 3. Kafka

Postálfaidh mé caibidlí críochnaithe de réir mar a aistrítear iad.

CAIBIDIL 1

Réamhrá

Tá teachtaireachtaí idirchórais ar cheann de na réimsí TF is lú tuiscint. Mar fhorbróir nó ailtire, b’fhéidir go bhfuil an-eolach agat ar chreataí agus bunachair shonraí éagsúla. Mar sin féin, is dócha nach bhfuil ach léargas agat ar an gcaoi a n-oibríonn teicneolaíochtaí teachtaireachtaí bróicéir-bhunaithe. Más mar sin a bhraitheann tú, ná bíodh imní ort, tá tú i gcuideachta mhaith.

Is gnách go mbíonn teagmháil an-teoranta ag daoine leis an mbonneagar teachtaireachtaí. Is minic a nascann siad le córas a cruthaíodh i bhfad ó shin, nó a íoslódáil trealamh dáileacháin ón Idirlíon, é a shuiteáil i PROM agus tús a scríobh cód dó. Nuair a bheidh an bonneagar ar bun agus ag feidhmiú in PROM, is féidir na torthaí a mheascadh: cailltear teachtaireachtaí ar thuairteanna, ní oibríonn seoltaí mar a bheifeá ag súil leis, nó crochann bróicéirí do tháirgeoirí nó ní sheolann siad teachtaireachtaí chuig do thomhaltóirí.

Fuaimeanna eolach?

Cás coitianta ina n-oibríonn do chód teachtaireachtaí go breá, de thuras na huaire. Go dtí go stopann sé ag obair. Luíonn an tréimhse seo forairdeall agus tugann sé tuiscint bhréagach ar shlándáil, rud a fhágann go bhfuil níos mó cód fós bunaithe ar smaointe bréagacha faoi iompar bunúsach na teicneolaíochta. Nuair a thosaíonn rudaí ag dul amú, bíonn fírinne mhíchompordach ag tabhairt aghaidhe ort: nár thuig tú i ndáiríre iompar bunúsach an táirge, nó na comhbhabhtálacha a roghnaigh na húdair, amhail feidhmíocht in aghaidh stóinseachta, nó idirbheartaíocht i gcoinne cothrománach. scalability.

Gan tuiscint dhomhain ar an gcaoi a n-oibríonn bróicéirí, déanann daoine éilimh réasúnta cosúil lena gcórais teachtaireachtaí, mar:

  • Ní chaillfidh an córas teachtaireachtaí choíche
  • Déanfar teachtaireachtaí a phróiseáil go seicheamhach
  • Má chuirtear tomhaltóirí leis, déanfar an córas níos tapúla
  • Ní sheachadfar teachtaireachtaí ach uair amháin

Ar an drochuair, tá cuid de na ráitis seo bunaithe ar thoimhdí nach mbaineann ach le himthosca áirithe, ach níl cuid eile fíor.

Múinfidh an leabhar seo duit conas réasúnaíocht a dhéanamh faoi chórais teachtaireachtaí bróicéireachta trí dhá theicneolaíocht bhróicéireachta a bhfuil an-tóir orthu a chur i gcomparáid agus a chodarsnacht: Apache ActiveMQ agus Apache Kafka. Tabharfaidh sé breac-chuntas ar chásanna úsáide agus dreasachtaí forbartha a thug ar a bhforbróirí cur chuige an-difriúil a ghlacadh maidir leis an réimse céanna teachtaireachtaí bróicéireachta idir córais. Breathnóimid ar na teicneolaíochtaí seo ón talamh aníos agus leagfaimid béim ar an tionchar a bhíonn ag roghanna dearaidh éagsúla ar an mbealach. Gheobhaidh tú tuiscint dhomhain ar an dá tháirge, tuiscint ar conas ba cheart agus nár cheart iad a úsáid, agus tuiscint ar cad ba cheart a bheith ag faire amach dó agus teicneolaíochtaí teachtaireachtaí eile á mbreithniú agat amach anseo.

Sula dtosaímid, déanaimis dul thar na bunghnéithe.

Cad is córas teachtaireachtaí ann agus cén fáth a bhfuil gá leis

Chun go mbeidh dhá fheidhmchlár in ann cumarsáid a dhéanamh lena chéile, ní mór dóibh comhéadan a shainiú ar dtús. Áirítear leis an sainmhíniú ar an gcomhéadan seo rogha iompair nó prótacail ar nós HTTP, MQTT, nó SMTP, agus caibidlíocht a dhéanamh ar na formáidí teachtaireachta a mhalartóidh na córais. Is féidir gur próiseas dian é seo, mar shampla scéimre XML a shainiú le riachtanais chostais phálasta le haghaidh teachtaireachta, nó d’fhéadfadh sé a bheith i bhfad níos lú foirmeálta, mar chomhaontú idir dhá fhorbróir go mbeidh aitheantóir cliaint i gcuid éigin d’iarratas HTTP. .

Fad is atá formáid na dteachtaireachtaí agus an t-ord ina seoltar iad comhsheasmhach idir córais, beidh siad in ann cumarsáid a dhéanamh lena chéile gan a bheith buartha faoi chur i bhfeidhm an chórais eile. Féadfaidh córais inmheánacha na gcóras seo, amhail an teanga ríomhchlárúcháin nó an creat a úsáidtear, athrú le himeacht ama. Chomh fada agus a chothaítear an conradh féin, is féidir leis an idirghníomhaíocht leanúint ar aghaidh gan athrú ar an taobh eile. Déantar an dá chóras a dhíchúpláil (scartha) go héifeachtach leis an gcomhéadan seo.

Is gnách go mbíonn idirghabhálaí idir dhá chóras i gceist le córais teachtaireachta a idirghníomhaíonn chun an seoltóir a dhíchúpláil tuilleadh (ar leithligh) ón bhfaighteoir nó ó na faighteoirí. Sa chás seo, ceadaíonn an córas teachtaireachtaí don seoltóir teachtaireacht a sheoladh gan a fhios aige cá bhfuil an faighteoir suite, cibé an bhfuil sé gníomhach nó cé mhéad dá chás.

Breathnaímid ar chúpla analógach do na cineálacha fadhbanna a réitíonn córas teachtaireachtaí agus tabhair isteach roinnt téarmaí bunúsacha.

Pointe go Pointe

Téann Alexandra chuig oifig an phoist chun pacáiste a sheoladh chuig Adam. Téann sí go dtí an fhuinneog agus tugann sí an beartán don fhostaí. Roghnaíonn an fostaí an pacáiste agus tugann sé admháil do Alexandra. Ní gá go mbeadh Adam sa bhaile nuair a sheoltar an pacáiste. Tá Alexandra muiníneach go seachadfar an pacáiste do Adam am éigin sa todhchaí agus is féidir léi leanúint ar aghaidh ag déanamh a ghnó. Níos déanaí, ag pointe éigin, faigheann Adam pacáiste.

Is sampla é seo de shamhail teachtaireachtaí pointe go pointe. Feidhmíonn oifig an phoist anseo mar mheicníocht dáileacháin pacáiste, ag cinntiú go seachadtar gach pacáiste uair amháin. Scarann ​​úsáid oifig an phoist an gníomh chun an beartán a sheoladh ó sheachadadh na dáileachta.
I gcórais teachtaireachtaí clasaiceacha, cuirtear an tsamhail pointe go pointe i bhfeidhm tríd scuainí. Feidhmíonn an scuaine mar mhaolán FIFO (an chéad dul isteach, an chéad cheann amach) ar féidir le tomhaltóir amháin nó níos mó síntiús a thabhairt dó. Seoltar gach teachtaireacht amháin ceann de na tomhaltóirí suibscríofa. De ghnáth déanann scuainí iarracht teachtaireachtaí a scaipeadh go cothrom i measc tomhaltóirí. Ní bhfaighidh ach tomhaltóir amháin an teachtaireacht seo.

Cuirtear an téarma "durable" i bhfeidhm ar scuainí. Iontaofacht is maoin sheirbhíse é a ráthaíonn go gcoimeádfaidh an córas teachtaireachtaí teachtaireachtaí in éagmais síntiúsóirí gníomhacha go dtí go ndéanann an tomhaltóir síntiús don scuaine seachadta teachtaireachta.

Is minic a mhearbhalltar le hiontaofacht marthanachta agus, cé go bhfuil an dá théarma idirmhalartaithe, comhlíonann siad feidhmeanna éagsúla. Cinneann marthanacht cibé an scríobhann an córas teachtaireachtaí teachtaireacht chuig stóráil de chineál éigin idir é a fháil agus í a sheoladh chuig an tomhaltóir. D’fhéadfadh nó nach mbeidh teachtaireachtaí a sheoltar chuig an scuaine leanúnach.
Úsáidtear teachtaireachtaí pointe go pointe nuair a éilíonn cás úsáide gníomh amháin ar theachtaireacht. I measc na samplaí tá cistí a thaisceadh isteach i gcuntas nó ordú seachadta a chomhlíonadh. Pléifimid níos déanaí cén fáth nach bhfuil córas teachtaireachtaí ann féin in ann seachadadh aonuaire a sholáthar agus cén fáth ar fearr is féidir le scuainí ráthaíocht seachadta a sholáthar. uair amháin ar a laghad.

Foilsitheoir-Síntiúsóir

Dialanna Gabriella uimhir na comhdhála. Cé go bhfuil baint aici leis an gcomhdháil, cloiseann sí gach rud a deir an cainteoir, mar aon leis an gcuid eile de rannpháirtithe an ghlao. Nuair a dhruideann sí amach, cailleann sí an méid a deirtear. Nuair a bhíonn sí ag athcheangal, leanann sí ag éisteacht lena bhfuil á rá.

Is sampla é seo de shamhail teachtaireachtaí foilsigh-liostáil. Feidhmíonn an glao comhdhála mar mheicníocht craolta. Is cuma leis an té atá ag caint cé mhéad duine atá ar an nglao faoi láthair - cinntíonn an córas go gcloisfidh aon duine a bhfuil baint aige leis an méid atá á rá.
I gcórais teachtaireachtaí clasaiceacha, cuirtear an tsamhail teachtaireachtaí foilsitheoireachta i bhfeidhm tríd bairr. Soláthraíonn ábhar an modh craolta céanna leis an meicníocht chomhdhála. Nuair a phostáiltear teachtaireacht chuig ábhar, déantar é a dháileadh do gach úsáideoir suibscríofa.

Ábhair de ghnáth neamhiontaofa (neamhsheasmhach). Cosúil le héisteoir nach féidir leis an méid atá á rá ar ghlao comhdhála a chloisteáil, nuair a théann an t-éisteoir as líne, cailleann síntiúsóirí topaicí aon teachtaireachtaí a sheoltar agus iad as líne. Ar an gcúis seo, is féidir linn a rá go dtugann na bairr ráthaíocht seachadta. ní mó ná uair amháin do gach tomhaltóir.

Foilsítear-Liostáil teachtaireachtaí a úsáidtear de ghnáth nuair a bhíonn na teachtaireachtaí eolais i nádúr agus nach bhfuil an caillteanas de teachtaireacht amháin suntasach. Mar shampla, is féidir le topaic léamha teochta a tharchur ó ghrúpa braiteoirí uair sa soicind. Ní bheidh córas a bhfuil suim aige sa teocht reatha agus a shíníonn do thopaic buartha má chailleann sé teachtaireacht - tiocfaidh ceann eile go luath.

samhlacha hibrideach

Cuireann láithreán gréasáin an tsiopa teachtaireachtaí ordaithe isteach i “scuaine teachtaireachta”. Is é an córas feidhmiúcháin príomhthomhaltóir na dteachtaireachtaí seo. Ina theannta sin, ba cheart go mbeadh cóipeanna de na teachtaireachtaí ordaithe seo ag an gcóras iniúchta lena rianú níos déanaí. Ní féidir leis an dá chóras teachtaireachtaí a chailleann, fiú mura bhfuil na córais féin ar fáil le tamall anuas. Níor cheart go mbeadh an suíomh Gréasáin ar an eolas faoi chórais eile.

Is minic a éilíonn cásanna úsáide meascán de shamhlacha teachtaireachtaí foilsitheoireachta-síntiúis agus pointe-go-pointe, mar shampla nuair a bhíonn cóip de theachtaireacht ag teastáil ó chórais iolracha agus nuair a bhíonn iontaofacht agus dianseasmhacht ag teastáil chun cailliúint teachtaireachta a chosc.

Sna cásanna seo, tá gá le ceann scríbe (téarma ginearálta le haghaidh scuainí agus topaicí), a dháileann teachtaireachtaí go bunúsach cosúil le topaic, ionas go seoltar gach teachtaireacht chuig córas ar leith a bhfuil suim acu sna teachtaireachtaí seo, ach freisin inar féidir le gach córas roinnt tomhaltóirí a shainiú. a fhaigheann teachtaireachtaí isteach, atá níos cosúil le scuaine. Is é an cineál léitheoireachta sa chás seo ná − uair amháin do gach geallsealbhóir. Is minic go mbíonn marthanacht ag teastáil ó na cinn scríbe hibrideacha seo ionas go nglacfar le teachtaireachtaí a sheoltar ag an am sin nuair a athcheanglaíonn tomhaltóir iad má dhícheanglaíonn tomhaltóir.

Níl samhlacha hibrideacha nua agus is féidir iad a chur i bhfeidhm ar fhormhór na gcóras teachtaireachtaí, lena n-áirítear ActiveMQ (trí chinn scríbe fíorúla nó ilchodacha a chomhcheanglaíonn topaicí agus scuainí) agus Kafka (go hintuigthe, mar mhaoin bhunúsach dá dhearadh ceann scríbe).

Anois go bhfuil roinnt téarmaíocht bhunúsach againn agus go bhfuil tuiscint againn ar cad a d'fhéadfadh córas teachtaireachtaí a bheith úsáideach dó, cuirimis isteach ar na sonraí.

Aistriúchán déanta: teilea.gg/lár_java

An chéad chuid eile aistrithe: Caibidil 3. Kafka

Le leanúint ...

Foinse: will.com

Add a comment