前言
最近一直在做微服务开发,涉及了一些数据处理模块的开发,每个处理业务都会开发独立的微服务,便于后面拓展和流编排,学习了SpringCloud Data Flow等框架,感觉这个框架对于我们来说太重了,维护起来也比较麻烦,于是根据流编排的思想,基于我们目前的技术栈实现简单的流编排功能。
简单的说,我们希望自己的流编排就是微服务可插拔,微服务数据入口及输出可不停机修改。
复制代码
准备工作
Nacos安装及使用入门
自己学习的话推荐使用docker安装,命令如下
- 拉取镜像 docker pull nacos/nacos-server
- 创建服务 docker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server
然后在浏览器输入 ip:8848/nacos 账号nacos 密码nacos
docker能够帮助我们快速安装服务,减少再环境准备花的时间
复制代码
准备三个SpringBoot服务,引入Nacos及Kafka
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.0.RELEASE</version>
</parent>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-starter</artifactId>
<version>0.2.1</version>
</dependency>
复制代码
配置文件
spring:
kafka:
bootstrap-servers: kafka-server:9092
producer:
acks: all
consum