spring cloud 搭建(kafka 入门(二))
标签: spring cloud spring
前面一篇,将了如何配置kafak:https://blog.csdn.net/hanjun0612/article/details/107667389
这一篇在上面的基础,扩展成2个微服务。
其实很简单。
就是在原来的基础上,把StreamReceiver 和 TestStream 拷贝到Service1服务中。
代码如下:
StreamReceiver
package com.test.service1.controller.kafka;
import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.annotation.StreamListener;
import org.springframework.stereotype.Component;
/**
* @author Tyler
* @date 2020/7/28
*/
@Component
@EnableBinding(value = {TestStream.class})
public class StreamReceiver {
@StreamListener(TestStream.INPUT)
public void receive(String message) {
System.out.println("StreamReceiver: "+message);
}
}
TestStream
package com.test.service1.controller.kafka;
import org.springframework.cloud.stream.annotation.Input;
import org.springframework.cloud.stream.annotation.Output;
import org.springframework.messaging.MessageChannel;
import org.springframework.messaging.SubscribableChannel;
/**
* @author Tyler
* @date 2020/7/28
*/
public interface TestStream {
String INPUT = "test-in";
String OUTPUT = "test-out";
@Input(INPUT)
SubscribableChannel testIn();
@Output(OUTPUT)
MessageChannel testOut();
}
POM文件:
PS:这里spring版本是2.3.2,用的是Hoxton.SR6
之前用的1.5.4,会报错:kafka Could not convert message
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.SR6</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-stream-kafka</artifactId>
<version>2.0.1.RELEASE</version>
</dependency>
</dependencies>
application.yml
spring:
application:
name: service1
cloud:
stream:
kafka:
binder:
brokers: localhost:9092
bindings:
test-in: #TestStream 中 INPUT
destination: testkafka
效果:
Service1:
Kafka:
智能推荐
Spring Cloud ELK+kafka日志分析平台(一) 搭建
一、简介 ELK是三个开源软件的缩写,分别为elasticsearch、logstash、kibana,elasticsearch是一个基于Lucene和Restful接口的分布式搜索引擎,logstash主要是用来日志的搜集、过滤和分析的工具,kibana是一个为elasticsearch和logstash提供良好的数据分析、检索、汇总可视化Web界面的工具,现在ELK已经被广泛应用到日志分...
Spring Cloud 入门 之 Ribbon 篇(二)
原文地址:SpringCloud 入门 之 Ribbon 篇(二) 博客地址:http://www.extlight.com 一、前言 上一篇《Spring Cloud 入门 之 Eureka 篇(一)》 介绍了微服务的搭建,服务注册与发现。但在文章中留了一个小尾巴–如何正确使用 Eureka 进行服务发现并调用服务。 本篇文章将介绍如何使用 Ribbon 完成发现服务的调用以及其负载...
Spring Cloud入门实战(二)--集成Eureka
前言 我自己建了个博客网站,欢迎大家来访问,阅读体验更佳点击进入 正在入门SpringCloud中,在学习的过程中也正好做个项目练手。这个项目是想做成一个模板,这样之后遇到同规模项目的时候可以拿来就用,版本也好控制。涉及到的中间件会有Eureka、Ribbon、Feign、HyStrix、Zuul、ConfigServer。这一节将项目改装成Spring Cloud并集成Eureka。 版本 Sp...
Spring Cloud入门二:eureka集群
Spring cloud eureka集群 Eureka帮助我们在spring cloud上进行服务注册和服务发现。但是,对于很多项目来说,只对服务在一个Spring Cloud Server注册是不合理的。当Server当掉时,服务将全部不能被发现。因此,我们在这里介绍对eureka进行集群,服务进行多注册。 多服务Server 新建两个Spring cloud Server项目,pom中添加依...
Spring Boot(二)之搭建spring cloud config配置中心
Spring Boot官网:点击打开链接 Spring Cloud官网:点击打开链接 Spring Cloud Config官网 : 点击打开链接 上一篇是SpringBoot入门,这篇就是干货结合springcloud的介绍了,在学习搭建之前我觉着有必要先看看这三个网址,相信我,这对你接下来的学习会很有帮助。 (一)背景知识 (1)Spring Cloud Config简介 这个是Sp...
猜你喜欢
Spring Cloud 2.1 搭建Spring Cloud
1.开发环境: 1. JDK 1.8 2. IntelliJ IDEA 2.开发步骤: 1. IDEA 中 新建Maven项目 2. pom.xml 添加依赖 spring-boot-starter-web 3.更新依赖包 项目 -- 右键 -- Maven -- Reimport 4. 编写启动类 5. 启动 MyApplication.java 即启动了Spring Cl...
Spring Cloud 网关 Spring Cloud Gateway 入门
1. 概述 Spring Cloud Gateway 是由 WebFlux + Netty + Reactor 实现的响应式的 API 网关。 Spring Cloud Gateway 旨在为微服务架构提供一种简单且有效的 API 路由的管理方式,并基于 Filter 的方式提供网关的基本功能,例如说安全认证、监控、限流等等。 ...
Spring Cloud入门之Spring Cloud Config
原文链接:http://www.dubby.cn/detail.html?id=9020 Config Server 创建配置中心: 编辑demo.properties: 编辑demo-dev.properties: 上传到远程仓库(https://gitee.com/yangzheng1994/config): 添加依赖: 编辑application.properties: 本来想用GitHub...
【JUC】004-ReadWriteLock读写锁
目录 一、ReadWriteLock读写锁 1、概述 官方文档介绍: 2、问题引出 代码实现: 运行结果: 问题: 3、使用读写锁 代码实现: 运行结果: 4、分析 一、ReadWriteLock读写锁 1、概述 官方文档介绍: 读可以多个线程读,写只能一个线程写; 2、问题引出 代码实现: 运行结果: 问题: 出现了多线程不安全的问题,我们要实现的是“读可以多个线程读,...
Spring Boot 2.x基础教程:使用 ECharts 绘制各种华丽的数据图表
个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 通常,这类需求在客户端应用中不太会用到,但是在后端的各种统计分析模块会经常碰到。比如:通过折线图、柱状图、雷达图等可视化形式,更直观的展现和分析经营状况或系统运行情况。这里我们将引入的数据可视化组件库 ECharts来帮助我们完成这样的任务。 ECharts简介 ECharts是百度开源的一个前端组件。它是一个使用 J...