前言
微服务开发涉及了一些数据处理模块的开发,每个处理业务都会开发独立的微服务,便于后面拓展和流编排。
学习了 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