首页 > 其他分享 >Confluent.Kafka Kafka部署安装及简单使用

Confluent.Kafka Kafka部署安装及简单使用

时间:2022-11-15 23:03:07浏览次数:88  
标签:zookeeper 部署 Confluent server kafka var new Kafka

Kafka部署安装及简单使用

 

一、环境准备

1、jdk 8+

2、zookeeper 

3、kafka

说明:在kafka较新版本中已经集成了zookeeper,所以不用单独安装zookeeper,只需要在kafka文件目录中启动zookeeper即可

二、下载地址

https://kafka.apache.org/downloads

 

 

三、部署

1、启动zookeeper

-- 启动
./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

-- 查看是否启动成功
ps -ef | grep zoo

2、进入解压的kafka目录,修改/config/kafka-server的配置文件

vi config/server.properties
-- 重点配置节点说明

listeners=PLAINTEXT://localhost:9092   -- 将localhost修改为主机ip

log.dirs=/bigdata/kafka/logs-1  -- 默认不修改也可

 

 3、使用kafka-server-start.sh,启动kafka服务

./bin/kafka-server-start.sh config/server.properties

四、使用客户端kafka tools连接kafka

客户端下载地址:https://www.kafkatool.com/download.html

关于客户端如何使用可查看:https://www.cnblogs.com/frankdeng/p/9452982.html

 

 

 

 

 

 

 

 

五、kafka实战简单使用

 

NuGet:Confluent.Kafka

 1、新建.Net Core控制台项目,代码如下:

 

 

复制代码
static void Main(string[] args)
        {
            // 发送消息
            var producerConfig = new ProducerConfig
            {
                BootstrapServers = "192.168.140.131:9092",
                MessageTimeoutMs = 50000
            };
            var builder = new ProducerBuilder<string, string>(producerConfig);
            using (var producer = builder.Build())
            {
                var data = new { key = "1", value = "001" };
                var json = JsonConvert.SerializeObject(data);
                var dr = producer.ProduceAsync("order", new Message<string, string> { Key = "order", Value = json }).GetAwaiter().GetResult();
                Console.WriteLine($"发送事件{dr.Value}到{dr.TopicPartitionOffset}成功");
            }

            // 消费消息
            var consumerConfig = new ConsumerConfig {
                BootstrapServers = "192.168.140.131:9092",
                AutoOffsetReset=AutoOffsetReset.Earliest,
                GroupId="1111", // 自定义
                EnableAutoCommit=true
            };
            var consumerBuilder = new ConsumerBuilder<string, string>(consumerConfig);


            using (var consumer = consumerBuilder.Build())
            {
                // 1、订阅
                consumer.Subscribe("order");
                while (true)
                {
                    try
                    {
                        // 2、消费(自动确认)
                        var result = consumer.Consume();

                        // 3、业务逻辑
                        string key = result.Key;
                        string value = result.Value;

                        Console.WriteLine($"创建商品:Key:{key}");
                        Console.WriteLine($"创建商品:Order:{value}");
                        consumer.Commit(result);

                    }
                    catch (Exception e)
                    {
                        Console.WriteLine($"异常:Order:{e}");
                    }
                }
            }
        }
复制代码

 

2、使用kafka客户端查看消息投递

 

  分类: Kafka

标签:zookeeper,部署,Confluent,server,kafka,var,new,Kafka
From: https://www.cnblogs.com/Leo_wl/p/16894346.html

相关文章

  • K8s部署owncloud
    目录owncloudhelminitowncloudhelpdebugconfigowncloudhttps://hub.kubeapps.com/charts/bitnami/owncloudhelminitownclouddockerpulldocker.io/bitnami/ow......
  • Kubernetes部署ldap
    目录docldapinitpvldapinituse查看状态dochttps://hub.kubeapps.com/charts/geek-cookbook/openldapldap389tcp636tcpinitpvkubectlapply-f/free_cicd......
  • 【2022.11.15】luffy项目部署(9)
    内容概要1redis字符串操作2redishash操作3redis列表操作4redis管道5redis其他操作6django中集成redis7celery介绍内容详细#装了图形化客户......
  • 从零开始的树莓派部署CentOS
    从零开始的树莓派部署CentOS硬件树莓派4b8G若干镜像使用官方镜像,选择64位armCentOS7ARM64(aarch64)选择镜像源http://mirrors.bfsu.edu.cn/centos-altarch/7.......
  • IM开源项目OpenIM部署文档-从准备工作到nginx配置
    IM开源项目OpenIM部署文档-从准备工作到nginx配置2022-11-1422:27·OpenIM 一、准备工作运行环境linux系统即可,Ubuntu7.5.0-3ubuntu1~18.04最优......
  • 阿里云服务器上SpringBoot单体项目的部署
    1、注意阿里云需要安全组端口设置,不然无法访问。不仅linux虚拟机里需要开放指定端口,阿里云ecs安全组也需要添加开放对应的端口;2、linux虚拟机中安装docker,参照阿里云服务......
  • CentOS服务器上普通用户(非root)源码部署禅道
    简介:公司服务器上的docker容器,其中一个容器最小化安装了CentOS,要在这个什么命令都没有的Linux系统上,在指定的路径下,部署禅道(先搭建环境);搭建Apache、PHP、MariaDB,并结合同......
  • xxl-job 容器化部署时实现自动注册
    集群环境机器A:部署xxl-job-admin机器B:部署xxl-job-executor机器A的物理网卡ip地址为x.x.x.x,机器B的物理网卡ip地址为y.y.y.y准备修改执行器yml......
  • rabbitmq集群部署-镜像模式
    一、环境RabbitMQ与Erlang的兼容关系详见:https://www.rabbitmq.com/which-erlang.htmlrabbitmq集群最好是奇数节点,所以一般需要3台设备以上。操作系统:CentOS7Erlang:erl......
  • 一文搞懂docker安装Jenkins,从gitee上面拉取代码.部署到另一台服务器支持版本回退
    1.前言通过docker安装Jenkins,从gitee上面拉取代码.部署到另一台服务器,并用docker启动.达到一键式构建的目标扩展功能.1.支持版本回退.2.限制版本数量,超出自动清理2......