业务场景
1、用户可以注册和登录
2、登录用户可以对课程进行CRUD操作
# 用户服务
- 登录
- 注册
- 基本信息
- 无状态,无session
- 单点登录
# 课程服务
- 登录验证
- 课程的crud
# 信息服务
- 发送邮件
- 发送短信
# 用户edgeservice
# 课程edgeservice
# API GATEWAY
项目结构图
Thrift环境安装
Thrift 与传统的RPC相比 支持跨语言数据传输
User
server.name=user
server.port=10000
spring.application.name=micro-user
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://${server.address}:3306/db_user?autoReconnect=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root
#dubbo 配置
spring.dubbo.application.name=user-service
spring.dubbo.registry.address=zookeeper://${server.address}:2181
spring.dubbo.protocol.name=dubbo
spring.dubbo.protocol.port=20890
spring.dubbo.server=true
spring.dubbo.protocol.host=127.0.0.1
spring.dubbo.scan=com.roger.user
docker pull 8-jre
docker run -it --entrypoint bash openjdk:8-jre
docker run -it user-service:1.0.2 --server.address=192.168.0.104
// 删除镜像
docker rmi -f id
1.docker run -it msg-service:latest --zookeeper.address=192.168.0.104
2.docker run -it user-service:latest --zookeeper.address=192.168.0.104 --mysql.address=192.168.0.104
3.docker run -it user-edge-service:latest --zookeeper.address=192.168.0.104
4.docker run -it course-service:latest --zookeeper.address=192.168.0.104 --mysql.address=192.168.0.104
5.docker run -it course-edge-service:latest --zookeeper.address=192.168.0.104
6.docker run -it gateway-zuul-service:latest
查看jar包内容 jar -tf user.jar
docker-compose down
docker-compose up -d
docker-compose 统一开启服务
docker-compose.yml 配置依赖关系
version: '3' # 版本不能随意填
services:
msg-service:
image: msg-service:latest
command:
- "--zookeeper.address=192.168.0.104"
user-service:
image: user-service:latest
command:
- "--mysql.address=192.168.0.104"
- "--zookeeper.address=192.168.0.104"
user-edge-service:
image: user-edge-service:latest
links:
- msg-service
- user-service
command:
- "--redis.address=192.168.0.104"
- "--zookeeper.address=192.168.0.104"
course-service:
image: course-service:latest
links:
- user-service
command:
- "--mysql.address=192.168.0.104"
- "--zookeeper.address=192.168.0.104"
course-edge-service:
image: course-edge-service:latest
links:
- user-edge-service
command:
- "--zookeeper.address=192.168.0.104"
gateway-zuul-service:
image: gateway-zuul-service:latest
links:
- user-edge-service
- course-edge-service
ports:
- 8080:8080