微服务从入门到放弃

微服务技术栈

  • 微服务治理
  • 异步通信技术
  • 缓存技术
  • DevOps
  • 搜索技术

在这里插入图片描述

架构演变

在这里插入图片描述
在这里插入图片描述

技术对比

在这里插入图片描述

服务拆分与远程调用

1、不同的微服务,不要重复开发相同业务
2、微服务数据独立,不要访问其他微服务的数据库
3、微服务可以将自己的业务暴露为自己的借口,供其他微服务调用

  1. 订单业务返回订单信息带有用户信息一起返回
  2. 在Spring容器中注入RestTemplate对象,然后再Server层
  3. Order order = orderMapper.findById(orderId); String url = "http://localhost:8081/user/"+order.getUserId(); User user = restTemplate.getForObject(url, User.class); order.setUser(user); return order;

Eureka

服务提供者启动时向eureka注册自己的信息,eureka保存信息,消费者通过Eureka拉取提供者信息
EureKa利用负载均衡算法,从服务列表中挑选一个
服务提供者每隔30秒向ErueKa报告健康状态,心跳不健康的会被踢出

  1. 引入依赖
  2. 编写启动类,添加@EnableEurekaServer注解
  3. 添加appliction.yml
server:
  port: 10086
spring:
  application:
    name: eurekserver #eureka服务名称
eureka:
  client:
    service-url:  #eureka的地址信息
      defaultZone:  http://127.0.0.1:10086/eureka

Nacos

Ribbon

OpenFeign

Gateway

Docker

docker镜像相关命令

docker pull redis:版本
docker images 查看镜像
docker save -i 文件名 redis:版本信息 保存镜像为xxx.tar
docker rmi -f redis:版本 删除镜像
docker load -i 文件名 加载文件到镜像
docker push 推送镜像
docker builder 定制镜像

docker 容器相关命令

docker run 容器启动
docker pause
docker unpause
docker stop
docker start
docker ps 查看容器状态
docker logs 查看日志
docker rm 删除容器
docker exec -it 容器名称 bash 进入容器内部
root@35efee2bdc70:/usr/share/nginx/html# sed -i ‘s#Welcome to nginx#chuanzhijiaoyu#g’ index.html 修改内容

docker 数据卷相关命令

数据卷的作用将容器与数据分离,方便操作数据容器内的数据,保证数据安全

docker volume create html 创建数据卷
docker volume ls 查看所有数据
docker volume inspect html 查看数据卷所有信息
docker volume rm 数据卷名 删除数据卷
docker volume prune 删除没有使用的数据卷
-v volumeName :/targetContainerPath 如果数据卷没有被创建会自动创建

RabbitMq和SpringAMQP

ElasticSearch

RestClient

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值