Apache Kafka

Hogyan állítsuk be a particionálást az Apache Kafka alkalmazásban

Hogyan állítsuk be a particionálást az Apache Kafka alkalmazásban
Az Apache Kafka egy erőteljes üzenetközvetítő szolgáltatás. Nagyon gyors és megbízható. Az Apache Kafka nyílt forráskódú és ingyenesen használható. Java nyelven íródott.Ebben a cikkben megmutatom, hogyan kell beállítani a partíciókat az Apache Kafka alkalmazásban. Kezdjük el.

Az Apache Kafka partíciók alapjai:

Megérteni Apache Kafka alapjait Partíciós, tudnod kell Kafkáról Téma első.

A Téma olyan, mint egy adatbázis egy SQL-adatbázisban, például a MariaDB az Apache Kafka számára. A Téma rendelkezik olyan névvel vagy azonosítóval, amelyet az üzenetek csoportosításához használ az Apache Kafka alkalmazásban.

A Partíció olyan, mint egy csatorna mindegyiknek Téma. A Téma sok lehet Partíciós vagy csatornák.

A két számítógépet összekötő hálózati kábelnek két vége van, az egyik adatokat küld, a másik adatokat fogad. Csakúgy, az Apache Kafka témának két vége van, Termelős és Fogyasztós. A Termelő üzeneteket hoz létre, és elküldi őket az egyik Partíciókanapé Téma. A Fogyasztó másrészt elolvassa az üzeneteket a Partíciókanapé Téma.

Többszörös Partíciós vagy csatornák jönnek létre a redundancia növelése érdekében. Az üzeneteket egy adott csoportba is csoportosítja Téma.

Ez az Apache Kafka alapjai Partíciós. Az Apache Kafka partíciókról egy másik dedikált cikkben tudhat meg többet Apache Kafka particionálás itt: https: // linuxhint.com / apache-kafka-particionálás

Az Apache Kafka telepítése:

Van egy dedikált részletes cikkem arról, hogyan kell Telepítse az Apache Kafka alkalmazást az Ubuntura, amelyet a https: // linuxhint oldalon olvashat el.com / install-apache-kafka-ubuntu /

Egy kis módosítással telepítheti az Apache Kafka alkalmazást más Linux disztribúciókra is.

Az Apache Kafka Server indítása:

Ha követte a cikkemet az Apache Kafka telepítéséhez, akkor először indítsa el az Apache Kafka szervert a következő paranccsal:

$ sudo kafka-server-start.sh / etc / kafka.tulajdonságait

Az Apache Kafka szervernek el kell indulnia. Tartsa nyitva ezt a terminált, amíg az Apache Kafka szervert futtatni szeretné.

Apache Kafka-téma létrehozása:

Létrehozhat egy Apache Kafka-t Téma tesztelés a következő paranccsal:

$ sudo kafka-topics.SH \
--létrehozni \
--zookeeper localhost: 2181 \
--replikációs tényező 1 \
--partíciók 1 \
--téma tesztelése

A Téma tesztelés létre kell hozni. Ez Téma 1 partícióval rendelkezik.

Ha alkotni akarsz, mondjuk N partíciókat, majd állítsa be -partíciók nak nek N.

Hozzunk létre egy másikat Téma, mondjuk felhasználók, val vel 3 Partíciós, majd futtassa a következő parancsot:

$ sudo kafka-topics.SH \
--létrehozni \
--zookeeper localhost: 2181 \
--replikációs tényező 1 \
--partíciók 3 \
--témakör felhasználói

Témakör felhasználói 3-val kell létrehozni Partíciós.

Partíciózott üzenetek hozzáadása a témához:

A Partícióed üzenete a Téma van egy kulcs és a érték. A kulcs és érték általában elválasztja a vessző vagy más különleges karakter. Nem számít, hogy milyen speciális karaktert használ a szétválasztáshoz kulcs és érték pár. De mindenhol ugyanazt a különleges karaktert kell használnia Téma. Ellenkező esetben a dolgok rosszra fordulhatnak.

A kulcs annak meghatározására szolgál Partíció a. üzenete Téma tartozik valamihez. Egyedülállónak kell lennie a Téma. Ha van 3 Partíciós, akkor használja 3 különböző kulcss. Annak érdekében, hogy az üzeneteket fel lehessen osztani 3 Partíciós.

Mondjuk a miénk felhasználók Téma van 3 felhasználók 1. gomb, 2, és 3, mindegyik az egyikhez tartozik 3 Partíciós a felhasználók Téma.

Futtassa a következő parancsot az első felhasználó hozzáadásához 1. gomb használni a Kafka Producer API:

$ echo "1, név: 'Shahriar Shovon', ország: 'BD'" | sudo kafka-console-producer.SH \
--brókerlista helyi gazda: 9092 \
--téma felhasználók \
--vagyon elemzése.kulcs = igaz \
--tulajdonságkulcs.elválasztó =,

Most felsorolhatja az üzenetet a felhasználók Téma használni a Kafka Consumer API a következő paranccsal:

$ sudo kafka-console-consumer.SH \
--zookeeper localhost: 2181 \
--téma felhasználók \
--ingatlan nyomtatása.kulcs = igaz \
--tulajdonságkulcs.elválasztó =, \
--kezdettől

Mint láthatja, a kulcs és érték pár most adtam hozzá a felhasználók Téma szerepel.

Meg fogom tartani a Fogyasztó program felhasználók Téma nyissa meg ezt a terminált, és adja hozzá a többi felhasználót a felhasználók Téma egy másiktól Terminál és meglátjuk, mi történik.

Adjon hozzá egy másik felhasználót a következővel: 2. gomb a következő paranccsal:

$ echo "2, név: 'John Doe', ország: 'BD'" | sudo kafka-console-producer.SH \
--brókerlista helyi gazda: 9092 \
--téma felhasználók \
--vagyon elemzése.kulcs = igaz \
--tulajdonságkulcs.elválasztó =,

Amint az alábbi képernyőkép kijelölt részéből látható, az új felhasználó azonnal felkerül a Consumer programra.

Adjuk hozzá az utolsó felhasználónkat a 3. gomb a következő paranccsal:

$ echo "3, név: 'Evelina Aquilino', ország: 'US'" | sudo kafka-console-producer.SH \
--brókerlista helyi gazda: 9092 \
--téma felhasználók \
--vagyon elemzése.kulcs = igaz \
--tulajdonságkulcs.elválasztó =,

Amint láthatja, az új felhasználó is szerepel a Fogyasztó program.

Sok felhasználót hozzáadhat ugyanahhoz Partíció. Csak győződjön meg róla, hogy kulcs ugyanaz.

Vegyünk fel egy másik felhasználót a Partíció val vel 1. gomb:

$ echo "1, name: 'Lynelle Piatt', ország: 'CA'" | sudo kafka-console-producer.SH \
--brókerlista helyi gazda: 9092 \
--téma felhasználók \
--vagyon elemzése.kulcs = igaz \
--tulajdonságkulcs.elválasztó =,

Amint láthatja, az új felhasználó hozzáadódik a helyeshez Partíció a felhasználók Téma.

Folyamatosan hozzáadhatok véletlenszerű felhasználókat a felhasználók Téma és a megfelelő partíción keresztül küldik őket, amint az az alábbi képernyőképen látható.

Tehát így Partíciós Apache-ban Kafka dolgozik. Minden Partíció olyan, mint a Sor, Először az első partíción keresztül küldött üzenet jelenik meg, majd a második üzenet és így tovább az elküldés sorrendjében.

Ha a Jáva fejlesztő, használhatja Jáva programozási nyelv és Apache Kafka Java APIs érdekes dolgokat tenni Apache Kafkával Partíciós. Például különbözőeket rendelhet hozzá Partíció az azonnali üzenetküldő alkalmazás különböző csevegőszobáihoz, mivel az üzeneteket az elküldés sorrendjében kell megjeleníteni.

Tehát ennyi a mai nap. Köszönjük, hogy elolvasta ezt a cikket.

Az X-Mouse Button Control segítségével az egér gombjait másképp alakíthatja át a különböző szoftvereknél
Lehet, hogy szüksége van egy eszközre, amely megváltoztathatja az egér vezérlését minden használt alkalmazással. Ebben az esetben kipróbálhatja az úgy...
Microsoft Sculpt Touch vezeték nélküli egér áttekintés
Nemrég olvastam a Microsoft Sculpt Touch vezeték nélküli egér és úgy döntött, hogy megveszi. Egy ideig használat után úgy döntöttem, hogy megosztom ve...
AppyMouse képernyős Trackpad és egérmutató a Windows táblagépekhez
A táblagép-felhasználók gyakran hiányolják az egérmutatót, különösen akkor, ha szokták használni a laptopokat. Az érintőképernyős okostelefonok és táb...