Ehara i te tukatuka anake: Me pehea ta matou hanga i tetahi putunga korero mai i nga awa o Kafka, me te aha i puta mai ai

Hei Habr!

Ka whakamahara matou ki a koe e whai ana i te pukapuka mo Kafka kua whakaputaina e matou he mahi whakamere mo te whare pukapuka Kafka Streams API.

Ehara i te tukatuka anake: Me pehea ta matou hanga i tetahi putunga korero mai i nga awa o Kafka, me te aha i puta mai ai

I tenei wa, kei te ako noa te hapori i nga rohe o tenei taputapu kaha. No reira, i taia ake nei tetahi tuhinga, ko te whakamaoritanga e hiahia ana matou ki te whakaatu atu ki a koe. Mai i tana ake wheako, ka korero te kaituhi me pehea te huri i nga awa o Kafka ki te rokiroki raraunga tohatoha. Kia pai te panui!

Puna Apache Nga awa o Kafka whakamahia puta noa i roto i nga umanga mo te tukatuka awa tohatoha i runga ake o Apache Kafka. Ko tetahi o nga ahuatanga kaore i te maiohatia o tenei anga ko te mea ka taea e koe te penapena i nga ahuatanga o te rohe i hangaia i runga i te tukatuka miro.

I roto i tenei tuhinga, ka korerotia e ahau ki a koe me pehea te whakahaere a ta maatau kamupene ki te whakamahi i tenei whai waahi ki te whakawhanake i tetahi hua mo te haumarutanga tono kapua. Ma te whakamahi i nga awa o Kafka, i hangaia e matou nga ratonga moroiti a te kawanatanga, ko ia mea he puna whakaraerae me te tino watea mo nga korero pono mo te ahua o nga taonga kei roto i te punaha. Ki a matou, he anga whakamua tenei mo te pono me te ngawari o te tautoko.

Mena kei te pirangi koe ki tetahi huarahi rereke e taea ai e koe te whakamahi i tetahi putunga putunga korero hei tautoko i te ahua okawa o o taonga, panuihia, ka pai...

He aha matou i whakaaro ai kua tae ki te waa ki te whakarereke i ta maatau mahi me te whenua tiritahi

Me mau tonu te ahua o nga momo taonga i runga i nga purongo a nga kaihoko (hei tauira: kei te whakaekehia te waahi)? I mua i te hekenga ki nga awa o Kafka, he maha nga wa ka whakawhirinaki matou ki tetahi papaa raraunga matua (+ ratonga API) mo te whakahaere kawanatanga. Ko tenei huarahi he ona ngoikoretanga: nga ahuatanga kaha o te ra ko te pupuri i te riterite me te tukutahitanga he tino wero. Ka noho pea te papaaarangi ki te kokiri, ka mutu ranei huru iwi me te mamae i te ohorere.

Ehara i te tukatuka anake: Me pehea ta matou hanga i tetahi putunga korero mai i nga awa o Kafka, me te aha i puta mai ai

Figure 1: He ahuatanga wehewehe-whenua angamaheni i kitea i mua i te whakawhiti ki
Ko nga awa o Kafka me te Kafka: ka korero nga kaihoko i o raatau whakaaro ma te API, ka tatauhia te ahua whakahou ma te papaa raraunga matua

Tutaki ki nga awa o Kafka, kia ngawari ki te hanga i nga ratonga miihini tiritiri

Tata ki te kotahi tau ki muri, i whakatau matou ki te ata titiro ki o maatau ahuatanga o te kawanatanga hei whakatika i enei take. I whakatau tonu matou ki te whakamatau i nga awa o Kafka - e mohio ana matou he pehea te tauineine, te tino watea me te hee-whakaaro, he aha te nui o nga mahi roma (whakawhitinga, tae atu ki nga ahuatanga). Ko nga mea e hiahiatia ana e matou, kaua e whakahua he pehea te pakeke me te pono o te punaha korero i Kafka.

Ko ia o nga ratonga moroiti whai mana i hangaia e matou i hangaia ki runga ake o te tauira Kafka Streams me te ahua ngawari. Kei roto ko 1) he puna 2) he tukatuka me te toa uara-matua mau tonu 3) he totohu:

Ehara i te tukatuka anake: Me pehea ta matou hanga i tetahi putunga korero mai i nga awa o Kafka, me te aha i puta mai ai

Whakaahua 2: Ko te topology taunoa o a maatau waa rerenga mo nga ratonga miihini whai mana. Kia mahara kei reira ano he putunga kei konei e mau ana nga metadata whakamahere.

I roto i tenei huarahi hou, ka titoa e nga kaihoko nga karere ka whangaia ki te kaupapa takenga, me nga kaihoko—e kii ana, he ratonga whakamohiotanga mēra—ka whiwhi i te ahua tiritiri rorohiko ma te totohu (kaupapa whakaputa).

Ehara i te tukatuka anake: Me pehea ta matou hanga i tetahi putunga korero mai i nga awa o Kafka, me te aha i puta mai ai

Whakaahua 3: He tauira rerenga mahi hou mo tetahi ahuatanga me nga ratonga miihini tiritahi: 1) ka whakaputa te kaihoko i tetahi karere ka tae ki te kaupapa puna Kafka; 2) he ratonga moroiti me te ahua tiritahi (ma te whakamahi i nga awa o Kafka) ka tukatuka me te tuhi i te ahua tatau ki te kaupapa Kafka whakamutunga; muri iho 3) ka whakaae nga kaihoko ki te ahua hou

Hey, he tino whai hua tenei toa-nui-a-roto!

Ka rite ki te korero i runga ake nei, kei roto i ta maatau topology whenua he toa nui-uara. I kitea e matou he maha nga whiringa mo te whakamahi, a e rua o enei e whakaahuahia ana i raro nei.

Kōwhiringa #1: Whakamahia he toa uara-matua mo nga tatauranga

Kei roto i ta maatau toa-matua tuatahi nga raraunga awhina e hiahiatia ana mo nga tatauranga. Hei tauira, i etahi wa i whakatauhia te whenua tiritahi ma te kaupapa o "pooti nui". Ka taea e te whare putunga te pupuri i nga purongo a nga kaihoko hou mo te ahuatanga o tetahi mea. Na, ka tae mai he purongo hou mai i tetahi kaihoko, tetahi atu ranei, ka taea e matou te penapena, te tiki i nga ripoata mai i era atu kaihoko katoa mo te ahua o taua mea mai i te rokiroki, ka whakahoki ano i te tatauranga.
Ko te Whakaaturanga 4 i raro nei e whakaatu ana i pehea te whakaatu i te pataka matua/uara ki te tikanga tukatuka a te kaitukatuka kia taea ai te tukatuka te karere hou.

Ehara i te tukatuka anake: Me pehea ta matou hanga i tetahi putunga korero mai i nga awa o Kafka, me te aha i puta mai ai

Whakaahua 4: Ka whakatuwherahia e matou te urunga ki te toa-uara matua mo te tikanga tukatuka a te kaitukatuka (i muri i tenei, ko nga tuhinga katoa e mahi tahi ana me te whenua tiritahi me whakamahi te tikanga doProcess)

Kōwhiringa #2: Waihangahia he API CRUD ki runga ake o nga awa o Kafka

I te whakatau i ta maatau rerenga mahi taketake, ka tiimata matou ki te tuhi i tetahi RESTful CRUD API mo a maatau ratonga moroiti whenua. I pirangi matou kia taea te tiki i te ahua o etahi mea katoa ranei, me te whakarite, te tango ranei i te ahua o tetahi mea (he pai mo te tautoko o muri).

Hei tautoko i nga API Tiaki Kawanatanga katoa, i nga wa katoa e hiahia ana matou ki te tatau ano i te ahua i te wa e tukatuka ana, ka penapenahia e matou ki roto i te toa-uara-nui kua oti te hanga mo te wa roa. I tenei keehi, he maamaa noa ki te whakatinana i taua API ma te whakamahi i tetahi tauira o nga awa o Kafka, penei i te raarangi i raro nei:

Ehara i te tukatuka anake: Me pehea ta matou hanga i tetahi putunga korero mai i nga awa o Kafka, me te aha i puta mai ai

Whakaaturanga 5: Te whakamahi i te toa uara-matua kua oti te hanga ki te tiki i te ahua o mua o tetahi mea

Ko te whakahou i te ahua o tetahi mea ma te API he ngawari hoki ki te whakatinana. Ko te tikanga, ko nga mea katoa e hiahia ana koe ki te hanga i tetahi kaihanga Kafka me te whakamahi ki te hanga rekoata kei roto te ahua hou. Ma tenei ka whakarite ko nga karere katoa ka puta mai i te API ka rite ki nga korero i whakawhiwhia mai i etahi atu kaihanga (hei tauira, nga kaihoko).

Ehara i te tukatuka anake: Me pehea ta matou hanga i tetahi putunga korero mai i nga awa o Kafka, me te aha i puta mai ai

Whakaatu 6: Ka taea e koe te tautuhi i te ahua o tetahi mea ma te whakamahi i te kaihanga Kafka

Poauautanga iti: He maha nga wehewehenga a Kafka

I muri mai, i hiahia matou ki te tohatoha i te kawenga tukatuka me te whakapai ake i te waatea ma te whakarato i te roopu o nga ratonga miihini tiritiri mo ia ahuatanga. He ngawari te tatūnga: i te wa i whirihorahia ai e matou nga waahi katoa kia haere i raro i te ID tono kotahi (me nga kaimau bootstrap ano), tata katoa i mahia aunoatia. I whakatauhia ano e matou he maha nga waahanga o ia kaupapa puna, kia taea ai te tautapa ki ia tauira he waahanga o aua waahanga.

Ka whakahua ano ahau he mahi noa ki te hanga i tetahi kape taapiri o te toa a te kawanatanga, hei tauira, ki te whakaora i muri i te korenga, whakawhiti i tenei kape ki tetahi atu tauira. Mo ia toa kawanatanga i nga awa o Kafka, ka hangaia he kaupapa taapiri me te raarangi huringa (e whai ana i nga whakahoutanga o te rohe). No reira, ka tautoko tonu a Kafka i te toa a te kawanatanga. No reira, ki te hee tetahi tauira Kafka Streams ranei, ka tere te whakahoki mai i te toa kawanatanga i runga i tetahi atu waa, ka haere nga waahanga e rite ana. Kua whakaatuhia e o maatau whakamatautau ka mahia tenei i roto i nga hēkona, ahakoa he miriona nga rekoata kei roto i te toa.

Ko te neke mai i te ratonga moroiti kotahi me te ahua tiritahi ki te kahui o nga ratonga moroiti, ka iti ake te whakaaro ki te whakatinana i te Tiki State API. I roto i te ahuatanga hou, kei roto i te toa kawanatanga o ia ratonga moroiti noa tetahi waahanga o te pikitia whanui (ko nga mea i mapihia o ratou ki ki tetahi waahanga motuhake). Me whakatau e matou ko tehea tauira kei roto te ahua o te ahanoa e hiahiatia ana e matou, ka mahia e matou i runga i te metadata miro, penei i raro nei:

Ehara i te tukatuka anake: Me pehea ta matou hanga i tetahi putunga korero mai i nga awa o Kafka, me te aha i puta mai ai

Whakaahua 7: Ma te whakamahi i nga metadata awa, ka whakatauhia mai i tehea tauira hei uiui i te ahua o te ahanoa e hiahiatia ana; i whakamahia he huarahi rite ki te GET ALL API

Ngā kitenga matua

Ka taea e nga toa a te kawanatanga i roto i nga awa o Kafka te mahi hei putunga korero kua tohatohahia,

  • he rite tonu ki Kafka
  • He ngawari te hanga CRUD API ki runga ake o taua punaha
  • He uaua ake te whakahaere i nga waahanga maha
  • Ka taea hoki te taapiri i tetahi, neke atu ranei nga toa kawanatanga ki te topology roma hei penapena raraunga awhina. Ka taea te whakamahi i tenei whiringa mo:
  • Te rokiroki mo te wa roa o nga raraunga e hiahiatia ana mo nga tatauranga i te wa e tukatuka ana i te awa
  • Te rokiroki mo te wa roa o nga raraunga ka whai hua pea i te wa e whai ake nei ka tukuna te tauira roma
  • nui noa atu...

Ko enei me etahi atu painga ka tino pai nga awa o Kafka mo te pupuri i te ahua o te ao i roto i te punaha tohatoha penei i a maatau. Ko nga awa o Kafka kua tino pono ki te whakaputa (karekau he karere i ngaro mai i te tukunga), a e whakapono ana matou kaore e mutu ana kaha ki reira!

Source: will.com

Tāpiri i te kōrero