{"id":579,"date":"2024-06-06T10:33:13","date_gmt":"2024-06-06T13:33:13","guid":{"rendered":"https:\/\/www.isacaguiar.com.br\/blog\/?p=579"},"modified":"2024-06-06T16:20:47","modified_gmt":"2024-06-06T19:20:47","slug":"579-2","status":"publish","type":"post","link":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/","title":{"rendered":"Como Funciona o Apache Kafka: Detalhes e Arquitetura"},"content":{"rendered":"<h4>Introdu\u00e7\u00e3o<\/h4>\n<p>O Apache Kafka \u00e9 uma plataforma de streaming distribu\u00edda projetada para construir pipelines de dados em tempo real e aplicativos de streaming. Desenvolvido inicialmente pela LinkedIn, Kafka se tornou um projeto de c\u00f3digo aberto da Apache Software Foundation. Este artigo explora em detalhes como o Kafka funciona, cobrindo sua arquitetura, componentes principais e fluxo de dados.<\/p>\n<h4>Arquitetura do Kafka<\/h4>\n<p>A arquitetura do Kafka \u00e9 baseada em quatro componentes principais: T\u00f3picos, Parti\u00e7\u00f5es, Brokers e Zookeeper.<\/p>\n<h5>T\u00f3picos<\/h5>\n<p>Um t\u00f3pico \u00e9 uma categoria ou feed de nome onde os registros s\u00e3o publicados. Os t\u00f3picos s\u00e3o particionados e replicados em v\u00e1rios servidores para garantir a escalabilidade e a toler\u00e2ncia a falhas.<\/p>\n<h5>Parti\u00e7\u00f5es<\/h5>\n<p>Cada t\u00f3pico \u00e9 dividido em v\u00e1rias parti\u00e7\u00f5es, que s\u00e3o unidades de paralelismo. As mensagens dentro de uma parti\u00e7\u00e3o s\u00e3o ordenadas e identificadas por um n\u00famero sequencial chamado offset. As parti\u00e7\u00f5es permitem a escalabilidade horizontal, pois podem ser distribu\u00eddas entre v\u00e1rios brokers.<\/p>\n<h5>Brokers<\/h5>\n<p>Um broker Kafka \u00e9 um servidor que armazena dados e serve como um intermedi\u00e1rio entre produtores e consumidores. V\u00e1rios brokers juntos formam um cluster Kafka, que distribui os dados e balanceia a carga de trabalho.<\/p>\n<h5>Zookeeper<\/h5>\n<p>O Apache Zookeeper \u00e9 usado para a coordena\u00e7\u00e3o e gerenciamento de configura\u00e7\u00e3o no Kafka. Ele gerencia o cluster Kafka, mant\u00e9m informa\u00e7\u00f5es sobre a estrutura de t\u00f3picos, parti\u00e7\u00f5es e r\u00e9plicas, e ajuda a coordenar produtores e consumidores.<\/p>\n<h4>Fluxo de Dados no Kafka<\/h4>\n<p>O fluxo de dados no Kafka pode ser dividido em tr\u00eas partes principais: produ\u00e7\u00e3o, armazenamento e consumo de mensagens.<\/p>\n<h5>Produ\u00e7\u00e3o de Mensagens<\/h5>\n<p>Os produtores s\u00e3o clientes que publicam mensagens em um ou mais t\u00f3picos no Kafka. Eles enviam mensagens de maneira s\u00edncrona ou ass\u00edncrona e podem controlar como as mensagens s\u00e3o particionadas. Um produtor pode especificar a parti\u00e7\u00e3o para uma mensagem ou deixar que o Kafka escolha uma parti\u00e7\u00e3o baseada em uma chave fornecida.<\/p>\n<div class=\"dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium\">\n<div class=\"hcb_wrap\">\n<pre class=\"wp-block-preformatted prism line-numbers lang-java\" data-lang=\"Java\"><code class=\"language-java\">ProducerRecord&lt;String, String&gt; record = new ProducerRecord&lt;&gt;(\"meu-topico\", \"chave\", \"mensagem\");\r\nproducer.send(record);\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<h5>Armazenamento de Mensagens<\/h5>\n<p>As mensagens s\u00e3o armazenadas em parti\u00e7\u00f5es dentro dos t\u00f3picos. Cada parti\u00e7\u00e3o armazena mensagens em ordem sequencial e atribui um offset \u00fanico a cada mensagem. As parti\u00e7\u00f5es s\u00e3o replicadas entre m\u00faltiplos brokers para garantir a durabilidade e a toler\u00e2ncia a falhas.<\/p>\n<ul>\n<li><strong>Log Segment:<\/strong> As mensagens em uma parti\u00e7\u00e3o s\u00e3o armazenadas em arquivos chamados segmentos de log.<\/li>\n<li><strong>Retention Policy:<\/strong> Kafka suporta pol\u00edticas de reten\u00e7\u00e3o configur\u00e1veis que determinam quanto tempo ou quantos dados devem ser retidos.<\/li>\n<\/ul>\n<h5>Consumo de Mensagens<\/h5>\n<p>Os consumidores s\u00e3o clientes que leem mensagens de um ou mais t\u00f3picos. Eles se inscrevem em t\u00f3picos e leem mensagens de parti\u00e7\u00f5es atribu\u00eddas. Cada consumidor mant\u00e9m o controle dos offsets das mensagens que j\u00e1 foram consumidas, permitindo o processamento eficiente e a reprocessamento em caso de falhas.<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"wp-block-preformatted prism line-numbers lang-java\" data-lang=\"Java\"><code class=\"language-java\">\r\nConsumerRecords&lt;String, String&gt; records = consumer.poll(Duration.ofMillis(100));\r\nfor (ConsumerRecord&lt;String, String&gt; record : records) {\r\n    System.out.printf(\"offset = %d, chave = %s, valor = %s%n\", record.offset(), record.key(), record.value());\r\n}\r\n<\/code><\/pre>\n<\/div>\n<h4>Coordena\u00e7\u00e3o e Balanceamento<\/h4>\n<h5>Grupos de Consumidores<\/h5>\n<p>Um grupo de consumidores \u00e9 um grupo de consumidores que trabalha em conjunto para consumir mensagens de um ou mais t\u00f3picos. Cada parti\u00e7\u00e3o de um t\u00f3pico \u00e9 consumida por apenas um consumidor em um grupo, permitindo o processamento paralelo de mensagens.<\/p>\n<h5>Rebalanceamento<\/h5>\n<p>Quando um novo consumidor se junta a um grupo ou um consumidor sai, o Kafka executa um processo de rebalanceamento, redistribuindo as parti\u00e7\u00f5es entre os consumidores. O rebalanceamento garante que as mensagens sejam consumidas de maneira eficiente e que a carga de trabalho seja distribu\u00edda uniformemente.<\/p>\n<h5>Comprometimento de Offsets<\/h5>\n<p>Os consumidores no Kafka comprometem periodicamente os offsets das mensagens consumidas. Isso permite que os consumidores retomem a leitura das mensagens do ponto em que pararam em caso de falhas. Os offsets podem ser comprometidos automaticamente pelo consumidor ou manualmente pelo aplicativo.<\/p>\n<h4>Toler\u00e2ncia a Falhas e Replica\u00e7\u00e3o<\/h4>\n<h5>Replica\u00e7\u00e3o<\/h5>\n<p>Cada parti\u00e7\u00e3o no Kafka \u00e9 replicada entre m\u00faltiplos brokers para garantir a durabilidade dos dados. Um broker \u00e9 designado como l\u00edder para cada parti\u00e7\u00e3o, e os outros brokers s\u00e3o seguidores. O l\u00edder manipula todas as opera\u00e7\u00f5es de leitura e escrita para a parti\u00e7\u00e3o, enquanto os seguidores replicam os dados do l\u00edder.<\/p>\n<h5>Failover<\/h5>\n<p>Em caso de falha do l\u00edder, um dos seguidores \u00e9 automaticamente promovido a l\u00edder, garantindo a continuidade do servi\u00e7o. O Zookeeper coordena esse processo de failover, monitorando a sa\u00fade dos brokers e gerenciando a elei\u00e7\u00e3o de l\u00edderes.<\/p>\n<h4>Seguran\u00e7a<\/h4>\n<h5>Autentica\u00e7\u00e3o<\/h5>\n<p>O Kafka suporta v\u00e1rios mecanismos de autentica\u00e7\u00e3o, incluindo SSL e SASL, para garantir que apenas clientes autorizados possam se conectar ao cluster.<\/p>\n<h5>Autoriza\u00e7\u00e3o<\/h5>\n<p>O Kafka fornece controle de acesso baseado em ACLs (listas de controle de acesso) para gerenciar permiss\u00f5es de leitura e escrita em t\u00f3picos e parti\u00e7\u00f5es.<\/p>\n<h5>Criptografia<\/h5>\n<p>O Kafka suporta criptografia de dados em tr\u00e2nsito usando SSL, garantindo que os dados sejam protegidos durante a transmiss\u00e3o entre produtores, consumidores e brokers.<\/p>\n<h4>Monitoramento e Gest\u00e3o<\/h4>\n<h5>M\u00e9tricas e Logs<\/h5>\n<p>O Kafka exp\u00f5e uma ampla variedade de m\u00e9tricas JMX que podem ser usadas para monitorar o desempenho do cluster. Ferramentas como Prometheus e Grafana s\u00e3o frequentemente usadas para coletar e visualizar essas m\u00e9tricas.<\/p>\n<h5>Ferramentas de Gest\u00e3o<\/h5>\n<p>Ferramentas de gest\u00e3o, como o Confluent Control Center, oferecem interfaces gr\u00e1ficas para gerenciar e monitorar clusters Kafka, simplificando tarefas de administra\u00e7\u00e3o e troubleshooting.<\/p>\n<h4>Conclus\u00e3o<\/h4>\n<p>O Apache Kafka \u00e9 uma plataforma poderosa e flex\u00edvel para constru\u00e7\u00e3o de pipelines de dados em tempo real e aplicativos de streaming. Sua arquitetura distribu\u00edda, suporte a alta taxa de transfer\u00eancia e durabilidade fazem do Kafka uma escolha ideal para muitas aplica\u00e7\u00f5es cr\u00edticas. Compreender os detalhes de seu funcionamento \u00e9 essencial para aproveitar ao m\u00e1ximo suas capacidades e garantir um desempenho e uma confiabilidade \u00f3timos.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introdu\u00e7\u00e3o O Apache Kafka \u00e9 uma plataforma de streaming distribu\u00edda projetada para construir pipelines de dados em tempo real e aplicativos de\u2026<\/p>\n","protected":false},"author":1,"featured_media":588,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29,30],"tags":[],"class_list":["post-579","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kafka","category-mensageria"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Como Funciona o Apache Kafka: Detalhes e Arquitetura - Blog do Aguiar<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Como Funciona o Apache Kafka: Detalhes e Arquitetura - Blog do Aguiar\" \/>\n<meta property=\"og:description\" content=\"Introdu\u00e7\u00e3o O Apache Kafka \u00e9 uma plataforma de streaming distribu\u00edda projetada para construir pipelines de dados em tempo real e aplicativos de\u2026\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog do Aguiar\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/isac.velozo.aguiar\" \/>\n<meta property=\"article:published_time\" content=\"2024-06-06T13:33:13+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-06-06T19:20:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"isacaguiar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"isacaguiar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/\"},\"author\":{\"name\":\"isacaguiar\",\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/#\/schema\/person\/78719359439f068d8b1e5e0bcb9d934d\"},\"headline\":\"Como Funciona o Apache Kafka: Detalhes e Arquitetura\",\"datePublished\":\"2024-06-06T13:33:13+00:00\",\"dateModified\":\"2024-06-06T19:20:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/\"},\"wordCount\":976,\"image\":{\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp\",\"articleSection\":[\"Kafka\",\"Mensageria\"],\"inLanguage\":\"pt-BR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/\",\"url\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/\",\"name\":\"Como Funciona o Apache Kafka: Detalhes e Arquitetura - Blog do Aguiar\",\"isPartOf\":{\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp\",\"datePublished\":\"2024-06-06T13:33:13+00:00\",\"dateModified\":\"2024-06-06T19:20:47+00:00\",\"author\":{\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/#\/schema\/person\/78719359439f068d8b1e5e0bcb9d934d\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#primaryimage\",\"url\":\"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp\",\"contentUrl\":\"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp\",\"width\":1024,\"height\":1024},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"http:\/\/www.isacaguiar.com.br\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Como Funciona o Apache Kafka: Detalhes e Arquitetura\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/#website\",\"url\":\"https:\/\/www.isacaguiar.com.br\/blog\/\",\"name\":\"Blog do Aguiar\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.isacaguiar.com.br\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.isacaguiar.com.br\/blog\/#\/schema\/person\/78719359439f068d8b1e5e0bcb9d934d\",\"name\":\"isacaguiar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/e22bb054d1154f07e6c91b82f0d68a219b6b04b58e5e3692c30cf457b51a9e9f?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e22bb054d1154f07e6c91b82f0d68a219b6b04b58e5e3692c30cf457b51a9e9f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e22bb054d1154f07e6c91b82f0d68a219b6b04b58e5e3692c30cf457b51a9e9f?s=96&d=mm&r=g\",\"caption\":\"isacaguiar\"},\"url\":\"https:\/\/www.isacaguiar.com.br\/blog\/author\/isacaguiar\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Como Funciona o Apache Kafka: Detalhes e Arquitetura - Blog do Aguiar","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/","og_locale":"pt_BR","og_type":"article","og_title":"Como Funciona o Apache Kafka: Detalhes e Arquitetura - Blog do Aguiar","og_description":"Introdu\u00e7\u00e3o O Apache Kafka \u00e9 uma plataforma de streaming distribu\u00edda projetada para construir pipelines de dados em tempo real e aplicativos de\u2026","og_url":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/","og_site_name":"Blog do Aguiar","article_publisher":"https:\/\/www.facebook.com\/isac.velozo.aguiar","article_published_time":"2024-06-06T13:33:13+00:00","article_modified_time":"2024-06-06T19:20:47+00:00","og_image":[{"width":1024,"height":1024,"url":"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp","type":"image\/webp"}],"author":"isacaguiar","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"isacaguiar","Est. tempo de leitura":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#article","isPartOf":{"@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/"},"author":{"name":"isacaguiar","@id":"https:\/\/www.isacaguiar.com.br\/blog\/#\/schema\/person\/78719359439f068d8b1e5e0bcb9d934d"},"headline":"Como Funciona o Apache Kafka: Detalhes e Arquitetura","datePublished":"2024-06-06T13:33:13+00:00","dateModified":"2024-06-06T19:20:47+00:00","mainEntityOfPage":{"@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/"},"wordCount":976,"image":{"@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp","articleSection":["Kafka","Mensageria"],"inLanguage":"pt-BR"},{"@type":"WebPage","@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/","url":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/","name":"Como Funciona o Apache Kafka: Detalhes e Arquitetura - Blog do Aguiar","isPartOf":{"@id":"https:\/\/www.isacaguiar.com.br\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#primaryimage"},"image":{"@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp","datePublished":"2024-06-06T13:33:13+00:00","dateModified":"2024-06-06T19:20:47+00:00","author":{"@id":"https:\/\/www.isacaguiar.com.br\/blog\/#\/schema\/person\/78719359439f068d8b1e5e0bcb9d934d"},"breadcrumb":{"@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.isacaguiar.com.br\/blog\/579-2\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#primaryimage","url":"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp","contentUrl":"https:\/\/www.isacaguiar.com.br\/blog\/wp-content\/uploads\/2024\/06\/DALL\u00b7E-2024-06-05-11.08.20-An-image-for-an-article-titled-Como-Funciona-o-Apache-Kafka_-Detalhes-e-Arquitetura.-The-image-features-a-professional-depiction-of-Apache-Kafkas-a.webp","width":1024,"height":1024},{"@type":"BreadcrumbList","@id":"https:\/\/www.isacaguiar.com.br\/blog\/579-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"http:\/\/www.isacaguiar.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Como Funciona o Apache Kafka: Detalhes e Arquitetura"}]},{"@type":"WebSite","@id":"https:\/\/www.isacaguiar.com.br\/blog\/#website","url":"https:\/\/www.isacaguiar.com.br\/blog\/","name":"Blog do Aguiar","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.isacaguiar.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/www.isacaguiar.com.br\/blog\/#\/schema\/person\/78719359439f068d8b1e5e0bcb9d934d","name":"isacaguiar","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/e22bb054d1154f07e6c91b82f0d68a219b6b04b58e5e3692c30cf457b51a9e9f?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/e22bb054d1154f07e6c91b82f0d68a219b6b04b58e5e3692c30cf457b51a9e9f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e22bb054d1154f07e6c91b82f0d68a219b6b04b58e5e3692c30cf457b51a9e9f?s=96&d=mm&r=g","caption":"isacaguiar"},"url":"https:\/\/www.isacaguiar.com.br\/blog\/author\/isacaguiar\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/posts\/579","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/comments?post=579"}],"version-history":[{"count":5,"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/posts\/579\/revisions"}],"predecessor-version":[{"id":683,"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/posts\/579\/revisions\/683"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/media\/588"}],"wp:attachment":[{"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/media?parent=579"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/categories?post=579"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.isacaguiar.com.br\/blog\/wp-json\/wp\/v2\/tags?post=579"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}