Kafka 环境搭建 kafka 安装.配置.启动.测试说明: 1. 安装:直接官网下载安装包,解压到指定位置即可(kafka 依赖的 Zookeeper 在文件中已包含) 下载地址:https://kafka.apache.org/downloads 示例版本:kafka_2.13-2.8.0.tgz 下载后可本地解压安装,解压位置自选,如 D:\Java 下 解压命令:tar -zxvf kafka_2.13-2.8.0.tgz PS:可在 idea 命令行窗口或 git 提供的命令窗口中进…
本文主要分享下Spring Boot和Spring Kafka如何配置整合,实现发送和接收来自Spring Kafka的消息. 先前我已经分享了Kafka的基本介绍与集群环境搭建方法.关于Kafka的介绍请阅读Apache Kafka简介与安装(一),关于Kafka安装请阅读Apache Kafka安装,关于Kafka集群环境搭建请阅读Apache Kafka集群环境搭建 .这里关于服务器环境搭建不在赘述. Spring Kafka整合Spring Boot创建生产者客户端案例 创建一个kafk…
最近项目需求用到了kafka信息中间件,在此做一次简单的记录,方便以后其它项目用到. 引入依赖 <dependency> <groupId>org.springframework.kafka</groupId> <artifactId>spring-kafka</artifactId> </dependency> 配置文件 kafka.consumer.servers=127.0.0.1:9092 kafka.consumer.ena…
文章目录 一.kafka的相关概念: 1.主题和分区 2.分区复制 3. 生产者 4. 消费者 5.broker和集群 二.项目说明 1.1 项目结构说明 1.2 主要依赖 二. 整合 kafka 2.1 kafka基本配置 2.2 KafkaTemplate实现消息发送 2.3 @KafkaListener注解实现消息的监听 2.4 测试整合结果 三.关于多消费者组的测试 3.1 创建多分区主题 3.2 多消费者组对同一主题的监听 3.2 发送消息时候指定主题的具体分区 3.4 测试结果 四.…
MQ全程(Message Queue)又名消息队列,是一种异步通讯的中间件.可以理解为邮局,发送者将消息投递到邮局,然后邮局帮我们发送给具体的接收者,具体发送过程和时间与我们无关,常见的MQ又kafka.activemq.zeromq.rabbitmq等等. RabbitMQ RabbitMQ是一个遵循AMQP协议,由面向高并发的erlang语言开发而成,用在实时的对可靠性要求比较高的消息传递上,支持多种语言客户端,支持延迟队列. 基础概念 Broker:消息队列的服务器实体 Exchange:…
现在大多数项目都是基于spring boot进行开发,所以我们以spring boot作为开发框架来使用netty.使用spring boot的一个好处就是能给将netty的业务拆分出来,并通过spring cloud整合到项目中. 我们以一个简单的客户端发送消息到服务的场景编写一个实例. 一.服务端模块 netty中服务端一般分为两个类,一个是启动配置类,另一个是消息的逻辑处理类,但是首先我们要配置spring boot的启动类,启动netty @SpringBootApplication p…
本文主要分享下Spring Boot和Spring Kafka如何配置整合,实现发送和接收来自Spring Kafka的消息. 项目结构 pom依赖包 <?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…
文章更新时间:2020/06/08 一.创建Spring boot 工程 创建过程不再描述,创建后的工程结构如下: POM文件中要加入几个依赖: <?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-inst…
除了之前介绍的创建线程方式外,spring boot为我们了提供一套完整的线程创建方式,其中包括了:线程.线程池.线程的监控. 一.使用spring boot提供的方法创建线程与线程池 1.首先在spring boot 的启动类上加上注解:@EnableAsync //开启同步线程必须加上注解 @EnableAsync @SpringBootApplication public class ThemApplication { public static void main(String[] ar…
开门见山(文末附有消息队列的几个基本概念) 1.直接模式( Direct)模式 直白的说就是一对一,生产者对应唯一的消费者(当然同一个消费者可以开启多个服务). 虽然使用了自带的交换器(Exchange),但使用的是默认的“”空字符串交换器, 也相当于直接跨过交换器到达消息队列,也是称为直接模式的原因(猜的) 生产者代码: @Autowired private RabbitTemplate rabbitTemplate; /* 普通模式: */ @Test public void SendMag…