kafka部署安装
kafka介绍
kafka是一个分布式的消息队列系统,适合离线和在线消费,扩展性好
kafka部署
安装包获取:
链接:https://pan.baidu.com/s/1y32yvZU-CAHBtbEfnHkJzQ
提取码:y9vb
–来自百度网盘超级会员V5的分享
安装目录为:/opt/soft/下;安装3个节点
1、配置jdk
- 第一种:yum install java-1.8.0-openjdk*(通过yum安装,修改环境变量)
- 第二种:将jdk包上传到服务器目录
注意:所有服务器节点都要安装JDK
解压
tar -xvf jdk-8u102-linux-x64.tar.gz
vim /etc/profile
JAVA_HOME=/opt/soft/jdk1.8.0_102
CLASS_PATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export JAVA_HOME CLASS_PATH PATH
生效
source /etc/profile
检查jdk是否生效状态
jps
或
javac -version
2、zookeeper
解压安装包:
tar -xvf zookeeper-3.4.8.tar.gz
mv zookeeper-3.4.8 zookeeper(重命名,看起来整洁)
配置zoo.cfg文件
cd /opt/zookeeper/conf
cp zoo_sample.cfg zoo.cfg
编辑,vim zoo.cfg
tickTime=2000 #服务器与客户端之间交互的基本时间单元(ms)
initLimit=10 #zookeeper所能接受的客户端数量
syncLimit=5 #服务器和客户端之间请求和应答之间的时间间隔
dataDir=/opt/soft/zookeeper/data #保存zookeeper数据,日志的路径
quorumListenOnAllIPs=true #因为配置的结点不是在同一内网中,设置的是公网ip
server.1=192.168.64.20:2888:3888
server.2=192.168.64.21:2888:3888
server.3=192.168.64.22:2888:3888 #根据节点ip进行修改
创建数据目录
mkdir -p /opt/soft/zookeeper/data
将zookeeper目录,拷贝到各个节点目录
scp -r zookeeper 192.168.64.21:/opt/soft
scp -r zookeeper 192.168.64.22:/opt/soft
给每个节点创建myid(myid的值需要与配置文件中server的id相同)
vim /opt//softzookeeper/data/myid(20节点)
1
vim /opt//softzookeeper/data/myid(21节点)
2
vim /opt/soft/zookeeper/data/myid(22节点)
3
启动zookeeper并查看状态(各个节点)
# 启动zookeeper:
/opt/opt/zookeeper/bin/zkServer.sh start
# 查看zookeeper状态:
/opt/opt/zookeeper/bin/zkServer.sh status
#jps查看是否启动QuorumPeerMain
#停止服务
/opt/opt/zookeeper/bin/zkServer.sh stop
3、kafka安装
解压安装包
tar -xvf kafka_2.11-0.10.0.0.tgz
mv kafka_2.11-0.10.0.0 kafka(重命名,看起来简洁)
cd kafka/config/ 目录,配置server.properties文件
vim server.properties
broker.id=0 //broker.id 需要kafka集群各节点不相同
delete.topic.enable=true //允许管理人员删除topic
auto.create.topics.enable=false //手动控制topic的创建,否则goldengate可以自动创建topic
listeners=PLAINTEXT://192.168.64.20:9092 //配置为本节点的ip
log.dirs=/opt/soft/kafka/logs
zookeeper.connect=192.168.64.20:2181, 192.168.64.21:2181, 192.168.64.22:2181
log.retention.hours=168 //多少个小时后,log数据会被删除,优先级低于minutes和ms
#log.retention.minutes=60 //多少分钟后,log数据会被删除,优先级低于ms
#log.retention.ms=6000 //多少毫秒后,log数据会被删除,如果被配置则优先使用
log.retention.bytes=-1 //log文件达到多少字节后,数据会被删除。设置为-1则没有大小限制
log.segment.bytes=1073741824 //每个log分片的大小,超过后会新建分片
log.roll.ms=60000 //间隔多久新创建一个数据文件
log.retention.check.interval.ms=300000 //多长时间轮询检查是否会删除log
创建日志目录
mkdir -p /opt/soft/kafka/logs
将kafka传给要安装其他各个节点
scp -r kafka 192.168.64.21:/opt/soft
scp -r kafka 192.168.64.22:/opt/soft
修改各个节点的broker.id和listeners(节点的broker.id的值不一样,分别为1,2,3)
vim /opt/kafka/config/server.properties(21节点)
broker.id=1
listeners=PLAINTEXT://192.168.64.21:9092
vim /opt/kafka/config/server.properties(22节点)
broker.id=2
listeners=PLAINTEXT://192.168.64.22:9092
启动kafka,检验是否运行(各个节点)
- 启动,jsp检验是否启动
/opt/soft/kafka/bin/kafka-server-start.sh /opt/soft/kafka/config/server.properties>/opt/kafka/logs/kk.log &/opt/soft/kafka/bin/kafka-server-start.sh -daemon /opt/soft/kafka/config/server.properties
检测2181和9092端口
netstat -tunlp|egrep "(2181|9092)"
kafka使用测试
创建topic
/opt/soft/kafka/bin/kafka-topics.sh --create --partitions 1 --replication-factor 3 --zookeeper 192.168.64.20:2181, 192.168.64.21:2181, 192.168.64.22:2181 --topic test
检查topic
/opt/soft/kafka/bin/kafka-topics.sh --list --zookeeper 192.168.64.20:2181, 192.168.64.21:2181, 192.168.64.22:2181
打开生产者
/opt/soft/kafka/bin/kafka-console-producer.sh --broker-list 192.168.192.20:9092 --topic test
打开消费者
/opt/soft/kafka/bin/kafka-console-consumer.sh --zookeeper 192.168.64.20:2181, 192.168.64.21:2181, 192.168.64.22:2181 --topic test --from-beginning
相关文章:
kafka部署安装
kafka介绍 kafka是一个分布式的消息队列系统,适合离线和在线消费,扩展性好 kafka部署 安装包获取: 链接:https://pan.baidu.com/s/1y32yvZU-CAHBtbEfnHkJzQ 提取码:y9vb –来自百度网盘超级会员V5的分享 安装目录为…...
使用asio实现一个单线程异步的socket服务程序
文章目录前言代码前言 之前,我使用epoll实现过一个C的后端服务程序,见:从头开始实现一个留言板-README_c做一个留言板_大1234草的博客-CSDN博客 但是它不够简便,无法轻松的合并到其他代码中。并且,由于程序中使用epo…...

大型JAVA版云HIS医院管理系统源码 Saas应用+前后端分离+B/S架构
SaaS运维平台多集团多医院入驻强大的电子病历完整文档 有源码,有演示! 云HIS系统技术栈: 1、前端框架:AngularNginx 2、后台框架:JavaSpring,SpringBoot,SpringMVC,SpringSecurity&…...

1 网关介绍
网关介绍 在微服务架构中,一个系统会被拆分为很多个微服务。那么作为客户端要如何去调用这么多的微服务呢?如果没有网关的存在,我们只能在客户端记录每个微服务的地址,然后分别去调用。这样的话会产生很多问题,例如&a…...
Java中Scanner用法
Java中Scanner用法 Scanner可以实现程序和人的交互,用户可以利用键盘进行输入。 不同类型的输入: String ssc.next(); //接受字符串数据 System.out.println(s);int s1 sc.nextInt();//接受整型数据 System.out.println(s1);double s2 sc.nextDouble…...

malloc实现原理探究
2021年末面试蔚来汽车,面试官考察了malloc/free的实现机制。当时看过相关的文章,有一点印象,稍微说了一点东西,不过自己感到不满意。今天尝试研究malloc的实现细节,看了几篇博文,发现众说纷纭,且…...

Spring——整合junit4、junit5使用方法
spring需要创建spring容器,每次创建容器单元测试是测试单元代码junit4依赖<?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-i…...
计算机网络的一些思考(待完善)
文章目录概念1. 缓存2. 备份(副本)3. 硬件和软件:4.端口5. 二进制协议vs文本协议6. 虚拟7.分布式8.广播域和冲突域的区别9本地地址协议1.CSMA/CD协议2.IP协议3.路由算法协议(RIP,OSPF,BGP)4.ARP…...
【第一章】谭浩强C语言课后习题答案
1.什么是程序?什么是程序设计? 程序:就是一组能识别和执行的指令,每一条指令使计算机执行特定的操作 程序设计:是指从确定任务到得到结果、写出文档的全过程 2.为什么需要计算机语言?高级语言有哪些特点? 为什么需要计算机语言:计算机语言解决了人和计算机交流是的…...

最新版本vue3+vite重构尚品汇(解决接口问题)第21-50集
第21集,第22集:照敲就行,引入概念。 第23集:防抖概念:前面所有的触发被取消,最后一次执行在规定的时间之后才会触发,只会执行一次。Lodash插件里面封装了函数的防抖和节流的业务。用到lodash确实…...

【超级猜图案例上半部分的实现 Objective-C语言】
一、超级猜图这么一个案例: 1.实现之后的效果是这样的: 1)中间有一个图片,点一下,能放大,背景变半透明的黑色: 2)再点一下图片,或者点周围黑色的阴影,图片回归原状, 3)右边有一个“大图”按钮,点一下,实现跟点图片一样的效果, 4)左边有一个“提示”按钮,点…...

刷题笔记4 | 24. 两两交换链表中的节点、19. 删除链表的倒数第N个节点、面试题 02.07. 链表相交、142.环形链表II
24. 两两交换链表中的节点 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 输入:head [1,2,3,4] 输出:…...

15、正则表达式
目录 一、元字符 二、限定修饰符 一、元字符 正则表达式通常被用于判断语句中,用来检查某一字符串是否满足某一格式。正则表达式是含有一些具有特殊意义字符的字符串,这些特殊字符称为正则表达式的元字符。例如,“\\d”表示数字0~9中的任何…...

javaWeb核心01-HTTPTomcatServlet
文章目录HTTP&Tomcat&Servlet1,Web概述1.1 Web和JavaWeb的概念1.2 JavaWeb技术栈1.2.1 B/S架构1.2.2 静态资源1.2.3 动态资源1.2.4 数据库1.2.5 HTTP协议1.2.6 Web服务器1.3 Web核心课程安排2, HTTP2.1 简介2.2 请求数据格式2.2.1 格式介绍2.2.2 实例演示2.…...
深圳大学计软《面向对象的程序设计》实验16 期末复习
A. 一、会员积分(期末模拟) 题目描述 某电商网站的会员分为:普通、贵宾两个级别 普通会员类Member,包含编号、姓名、积分三个属性,编号和积分是整数,姓名是字符串 操作包括构造、打印、积分累加、积分兑…...
Linux基础命令(一)
文章目录1、时间命令:date2、日历命令:cal3、计算器程序:bc4、基础组合键5、正确的关机指令使用5.1 将数据同步写入硬盘中的指令: sync5.2 惯用的关机指令: shutdown5.3 重新开机,关机: reboot,…...

RocketMQ Broker消息处理流程剩余源码解析
🍊 Java学习:Java从入门到精通总结 🍊 深入浅出RocketMQ设计思想:深入浅出RocketMQ设计思想 🍊 绝对不一样的职场干货:大厂最佳实践经验指南 📆 最近更新:2023年3月4日 …...
JQuery入门基础
目录 1.初识 下载 使用 JQuery(核心)对象 2.选择器 基础选择器 层次选择器 后代选择器 子代选择器 兄弟选择器 相邻选择器 3.JQuery DOM操作 创建元素 插入元素 删除元素 遍历元素 属性操作 获取属性 设置属性 删除属性 样式操作 …...
kafka 构建双向SSL认证
kafka 安装 以下内容均已完成测试,按照教程搭建你会得到一个双向ssl认证的kafka broker,并能通过ip以及域名访问,笔者能力有限如果文章内容存在问题烦请各位指出。 搭建单机Kafka 需求 centos 7kafka_2.12-2.6.0jdk8(文档中统…...

推荐一个.Net Core开发的Websocket群聊、私聊的开源项目
更多开源项目请查看:一个专注推荐.Net开源项目的榜单 今天给大家推荐一个使用Websocket协议实现的、高性能即时聊天组件,可用于群聊、好友聊天、游戏直播等场景。 项目简介 这是一个基于.Net Core开发的、简单、高性能的通讯组件,支持点对点…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
设计模式和设计原则回顾
设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...

【JavaWeb】Docker项目部署
引言 之前学习了Linux操作系统的常见命令,在Linux上安装软件,以及如何在Linux上部署一个单体项目,大多数同学都会有相同的感受,那就是麻烦。 核心体现在三点: 命令太多了,记不住 软件安装包名字复杂&…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...

使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...

【 java 虚拟机知识 第一篇 】
目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...

论文阅读笔记——Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing
Muffin 论文 现有方法 CRADLE 和 LEMON,依赖模型推理阶段输出进行差分测试,但在训练阶段是不可行的,因为训练阶段直到最后才有固定输出,中间过程是不断变化的。API 库覆盖低,因为各个 API 都是在各种具体场景下使用。…...
MySQL 主从同步异常处理
阅读原文:https://www.xiaozaoshu.top/articles/mysql-m-s-update-pk MySQL 做双主,遇到的这个错误: Could not execute Update_rows event on table ... Error_code: 1032是 MySQL 主从复制时的经典错误之一,通常表示ÿ…...