Ukuqonda abadayisi bemiyalezo. Ukufunda imishini yokuthumela imiyalezo nge-ActiveMQ ne-Kafka. Isahluko 1

Sawubona wonke umuntu!

Ngaqala ukuhumusha incwadi encane:
Β«Ukuqonda Abadayisi Bemiyalezo",
umbhali: Jakub Korab, umshicileli: O'Reilly Media, Inc., usuku lokushicilelwa: Juni 2017, ISBN: 9781492049296.

Kusukela kusingeniso sencwadi:
"... Leli bhuku lizokufundisa ukuthi ungacabanga kanjani ngezinhlelo zemiyalezo yabathengi, ukuqhathanisa nokuqhathanisa ubuchwepheshe obubili obudumile bomthengisi: i-Apache ActiveMQ ne-Apache Kafka. Izoveza izimo zokusebenzisa kanye nezisusa zentuthuko eziholele abathuthukisi bazo ukuthi bathathe izindlela ezihluke kakhulu endaweni efanayoβ€”ukuthumela imiyalezo phakathi kwamasistimu nomthengisi ophakathi. Sizobheka lobu buchwepheshe kusukela phansi futhi sigqamise umthelela wezinketho ezihlukahlukene zemiklamo endleleni. Uzothola ukuqonda okujulile kwayo yomibili imikhiqizo, ukuqonda ukuthi kufanele isetshenziswe kanjani nokungafanele isetshenziswe kanjani, kanye nokuqonda ukuthi yini okufanele uyibheke lapho ucabangela obunye ubuchwepheshe bemiyalezo ngokuzayo. ... "

Izingxenye ezihunyushwe kuze kube manje:
Isahluko 1. Isingeniso
Isahluko 3. Kafka

Ngizothumela izahluko eziqediwe njengoba zihunyushwa.

ISAHLUKO 1

Isingeniso

Imiyalezo yesistimu nesistimu ingenye yezindawo eziqondwa kancane ze-IT. Njengonjiniyela noma umakhi, kungenzeka ukuthi ujwayelene kakhulu nezinhlaka ezahlukahlukene kanye nesizindalwazi. Kodwa-ke, kungenzeka ukuthi unokujwayelana okudlulayo kuphela kokuthi ubuchwepheshe bemiyalezo obususelwa kumthengisi busebenza kanjani. Uma uzizwa ngale ndlela, ungakhathazeki, usendaweni enhle.

Abantu ngokuvamile banokuxhumana okulinganiselwe nengqalasizinda yemiyalezo. Bavame ukuxhuma ohlelweni oludalwe kudala, noma balande ukusatshalaliswa ku-inthanethi, bafake ku-PROM bese beqala ukubhala ikhodi yalo. Ngemva kokusebenzisa ingqalasizinda ku-PROM, imiphumela ingaxutshwa: imilayezo iyalahleka ngenxa yokwehluleka, ukuthumela akusebenzi njengoba ubulindele, noma abathengisi β€œbalenga” abakhiqizi bakho noma abathumeli imilayezo kubathengi bakho.

Kuzwakala ujwayelekile?

Isimo esivamile lapho ikhodi yakho yomlayezo isebenza kahle, okwamanje. Ize iyeke ukusebenza. Lesi sikhathi sithulisa umuntu oqaphile emuzweni oyiphutha wokuphepha, okuholela kukhodi eyengeziwe esekelwe ezinkolelweni ezingamanga mayelana nokuziphatha okuyisisekelo kobuchwepheshe. Uma izinto ziqala ukungahambi kahle, ubhekana neqiniso elingalungile: ukuthi awukaqondi ngempela ukuziphatha okuyisisekelo komkhiqizo noma ukuhwebelana okukhethwe ababhali, njengokusebenza kuqhathaniswa nokwethembeka, noma ukuthengiselana kuqhathaniswa nokukaleka okuvundlile. .

Ngaphandle kokuqonda okujulile kokuthi abathengisi basebenza kanjani, abantu benza izitatimende ezizwakalayo mayelana nezinhlelo zabo zemiyalezo, njengokuthi:

  • Uhlelo alusoze lwalahlekelwa imilayezo
  • Imilayezo izocutshungulwa ngokulandelana
  • Ukwengeza abathengi kuzokwenza isistimu isheshe
  • Imilayezo izolethwa kanye kuphela

Ngeshwa, ezinye zalezi zitatimende zisekelwe ekuqageleni okusebenza ngaphansi kwezimo ezithile kuphela, kuyilapho ezinye zingalungile.

Leli bhuku lizokufundisa ukuthi ungacabanga kanjani ngezinhlelo zemiyalezo ezisuselwe kumdayisi ngokuqhathanisa nokuqhathanisa ubuchwepheshe obubili obudumile bomthengisi: i-Apache ActiveMQ ne-Apache Kafka. Izoveza izimo zokusebenzisa kanye nezisusa zentuthuko eziholele abathuthukisi bazo ukuthi bathathe izindlela ezihluke kakhulu endaweni efanayoβ€”ukuthumela imiyalezo phakathi kwamasistimu nomthengisi ophakathi. Sizobheka lobu buchwepheshe kusukela phansi futhi sigqamise umthelela wezinketho ezihlukahlukene zemiklamo endleleni. Uzothola ukuqonda okujulile kwayo yomibili imikhiqizo, ukuqonda ukuthi kufanele isetshenziswe kanjani nokungafanele isetshenziswe, kanye nokuqonda ukuthi yini okufanele uyibheke lapho ucabangela obunye ubuchwepheshe bemiyalezo ngokuzayo.

Ngaphambi kokuba siqale, ake sidlule ezintweni eziyisisekelo.

Luyini Uhlelo Lwemiyalezo futhi kungani ludingeka?

Ukuze izinhlelo zokusebenza ezimbili zixhumane, kufanele ziqale zichaze isixhumi esibonakalayo. Ukuchaza lesi sixhumanisi kuhlanganisa ukukhetha ezokuthutha noma iphrothokholi, efana ne-HTTP, i-MQTT, noma i-SMTP, nokuxoxisana ngamafomethi wemilayezo azoshintshwa phakathi kwamasistimu. Lokhu kungase kube inqubo eqinile, njengokuchaza i-schema se-XML esinezidingo zezindleko zokukhokhelwa komlayezo, noma kungase kungabi ngokomthetho kakhulu, njengesivumelwano phakathi konjiniyela ababili sokuthi ingxenye ethile yesicelo se-HTTP izoqukatha isihlonzi seklayenti .

Inqobo nje uma ifomethi yemilayezo nokuhleleka okuthunyelwa ngayo kuhambisana phakathi kwezinhlelo, zingakwazi ukuxhumana ngaphandle kokukhathazeka ngokusetshenziswa kolunye uhlelo. Abangaphakathi balezi zinhlelo, njengolimi lokuhlela noma uhlaka olusetshenziswayo, bangashintsha ngokuhamba kwesikhathi. Uma nje inkontileka ngokwayo igcinwa, ukusebenzisana kungaqhubeka ngaphandle kwezinguquko ezivela kolunye uhlangothi. Amasistimu womabili ahlukaniswa ngempumelelo (ahlukaniswe) yilesi sikhombimsebenzisi.

Amasistimu okuthumela imilayezo ngokuvamile abandakanya umlamuli phakathi kwamasistimu amabili asebenzisana ukuze kuqhutshekwe nokuhlukanisa (ukuhlukanisa) umthumeli kumamukeli noma abamukeli. Kulesi simo, isistimu yemiyalezo ivumela umthumeli ukuthumela umlayezo ngaphandle kokwazi ukuthi umamukeli ukuphi, noma ngabe uyasebenza, noma zingaki izimo.

Ake sibheke izifaniso ezimbalwa zezinhlobo zezinkinga ezixazululwa yisistimu yemiyalezo bese sethula amagama ayisisekelo.

Khomba-ePhoyinti

U-Alexandra uya eposini ukuze athumelele u-Adam iphasela. Aqonde efasiteleni anikeze isisebenzi iphasela. Isisebenzi sithatha iphakethe bese sinikeza u-Alexandra irisidi. U-Adamu akudingeki abe sekhaya lapho iphasela lithunyelwa. U-Alexandra uyaqiniseka ukuthi iphakheji izolethwa ku-Adamu esikhathini esithile esizayo futhi angaqhubeka nokwenza ibhizinisi lakhe. Kamuva ngesikhathi esithile u-Adamu uthola iphasela.

Lesi isibonelo semodeli yemiyalezo iphuzu-kuya-iphuzu. Iposi lapha lisebenza njengendlela yokusabalalisa amaphasela, liqinisekisa ukuthi iphasela ngalinye lilethwa kanye. Ukusebenzisa iposi kuhlukanisa isenzo sokuthumela iphakheji kusukela ekulethweni kwephakheji.
Kuzinhlelo zemiyalezo yakudala, imodeli yephoyinti nephuzu isetshenziswa ngokusebenzisa emigqeni. Ulayini usebenza njengebhafa ye-FIFO (kuqala phakathi, eyokuqala) engabhaliswa umthengi oyedwa noma ngaphezulu. Umlayezo ngamunye ulethwa kuphela komunye wabathengi ababhalisile. Olayini ngokuvamile bazama ukusabalalisa imilayezo ngendlela efanele phakathi kwabathengi. Umthengi oyedwa kuphela ozothola lo mlayezo.

Igama elithi β€œukuqina” lisetshenziswa kolayini. Ukuthembeka iyindawo yesevisi eqinisekisa ukuthi isistimu yemiyalezo izoqhubeka nemiyalezo uma bengekho ababhalisi abasebenzayo kuze kube yilapho umthengi ebhalisela ulayini wokulethwa komlayezo.

Ukuthembeka kuvame ukudideka ukuphikelela futhi nakuba la magama womabili esetshenziswa ngokushintshana, enza imisebenzi ehlukene. Ukuphikelela kunquma ukuthi ingabe isistimu yemiyalezo ibhala umlayezo ohlotsheni oluthile lwesitoreji phakathi kokuwuthola nokuwuthumela kumthengi. Imilayezo ethunyelwe kulayini ingase iqhubeke noma ingapheli.
Imilayezo ekhomba-ephuzu isetshenziswa lapho ukusetshenziswa kudinga isenzo sesikhathi esisodwa kumlayezo. Izibonelo zihlanganisa ukufaka imali ku-akhawunti noma ukugcwalisa i-oda lokulethwa. Sizoxoxa ngokuhamba kwesikhathi ukuthi kungani isistimu yemiyalezo ngokwayo ingakwazi ukuhlinzeka ngesikhathi esisodwa nokuthi kungani imigqa inganikeza isiqinisekiso sokulethwa okungcono kakhulu. okungenani kanye.

Umshicileli-Obhalisile

U-Gabriella udayela inombolo yenkomfa. Ngenkathi exhunywe engqungqutheleni, uzwa konke okushiwo isikhulumi, kanye nabanye ababambiqhaza bocingo. Lapho ecula, uyaphuthelwa okushiwoyo. Uma exhunywa kabusha, uyaqhubeka nokuzwa ukuthi kuthiwani.

Lesi isibonelo semodeli yemiyalezo shicilela-bhalisa. Ukushaya kwengqungquthela kusebenza njengendlela yokusakaza. Umuntu okhulumayo akanandaba ukuthi bangaki abantu abasocingweni njengamanje - uhlelo luqinisekisa ukuthi noma ubani oxhumene njengamanje uzozwa okushiwoyo.
Kuzinhlelo zemiyalezo yakudala, imodeli yemiyalezo yokushicilela isetshenziswa ngokusebenzisa izihloko. Isihloko sihlinzeka ngendlela yokusakaza efanayo nendlela yenkomfa. Uma umlayezo uthunyelwa esihlokweni, uyasakazwa kubo bonke abasebenzisi ababhalisile.

Izihloko ngokuvamile engathembeki (engabekezeleleki). Njengomlaleli ongakwazi ukuzwa okushiwo ocingweni lwengqungquthela lapho umlaleli enqamula, ababhalisile besihloko bayaphuthelwa noma yimiphi imilayezo ethunyelwa ngenkathi bengaxhunyiwe ku-inthanethi. Ngalesi sizathu, singasho ukuthi izihloko zinikeza isiqinisekiso sokulethwa akukho ngaphezu kokukodwa kumthengi ngamunye.

Imilayezo yokubhalisa yokushicilela ngokuvamile isetshenziswa uma imilayezo inolwazi ngokwemvelo futhi ukulahlekelwa komlayezo owodwa akubalulekile kakhulu. Isibonelo, isihloko singadlulisela ukufundwa kwezinga lokushisa kusuka eqenjini lezinzwa kanye ngomzuzwana. Isistimu enentshisekelo kumazinga okushisa amanje futhi ebhalisela isihloko ngeke ikhathazeke uma igeja umlayezo - enye izofika maduze.

amamodeli ahlanganisiwe

Iwebhusayithi yesitolo ibeka imilayezo ye-oda "kulayini womlayezo." Umthengi omkhulu wale miyalezo uhlelo lokuphatha. Ngaphezu kwalokho, uhlelo lokucwaninga kufanele lube namakhophi ale miyalezo yoku-oda ukuze lulandelelwe. Womabili amasistimu awakwazi ukuvumela imilayezo ukuthi idlule, ngisho noma amasistimu ngokwawo engatholakali isikhathi esithile. Iwebhusayithi akufanele iqaphele ezinye izinhlelo.

Izimo zokusetshenziswa ngokuvamile zidinga inhlanganisela yamamodeli wokuthumela ukubhalisa kanye nephoyinti-kuya-iphuzu, njengalapho amasistimu amaningi edinga ikhophi yomlayezo futhi kokubili ukwethembeka nokuphikelela kuyadingeka ukuze kuvinjelwe ukulahlekelwa komlayezo.

Lezi zimo zidinga indawo (igama elivamile lolayini nezihloko) esabalalisa imilayezo njengesihloko, ukuze umlayezo ngamunye uthunyelwe kusistimu ehlukile enentshisekelo kuleyo milayezo, kodwa futhi lapho isistimu ngayinye ingachaza abathengi abambalwa abathola engenayo. imiyalezo, efana nolayini. Uhlobo lokufunda kuleli cala kanye kubabambiqhaza ngamunye. Lezi zindawo eziyingxubevange ngokuvamile zidinga ukuqina ukuze uma umthengi engaxhunyiwe ku-inthanethi, imilayezo ethunyelwa ngaleso sikhathi itholwa ngemva kokuba umthengi exhume kabusha.

Amamodeli ahlanganisiwe awamasha futhi angasetshenziswa ezinhlelweni eziningi zemiyalezo, okuhlanganisa kokubili i-ActiveMQ (ngezindawo okuyiwa kuzo ezibonakalayo noma eziyinhlanganisela ezihlanganisa izihloko nolayini) kanye ne-Kafka (ngokusobala, njengendawo eyisisekelo yomklamo wayo wendawo).

Manje njengoba sesinamagama athile ayisisekelo kanye nokuqonda ukuthi yini esingayisebenzisela isistimu yemiyalezo, ake sehlele imininingwane.

Ukuhumusha kwenziwe: tele.gg/middle_java

Ingxenye elandelayo ehunyushiwe: Isahluko 3. Kafka

Kuzoqhubeka ...

Source: www.habr.com

Engeza amazwana