SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式

Eureka注册中心 u里卡
服务者将信息给eureka,提供者找eureka 要



配置eurekaserver 服务端

服务注册 客户端
在服务提供者里加依赖、改yml

多部署

服务拉取

Ribbon负载均衡

调整负载均衡策略

饥饿加载

Nacos注册中心

依赖配置

导依赖、改yml

服务集群 cluster-name

nacos负载均衡 优先访问本地集群
userservice: ribbon: NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRulena
nacos负载均衡权重 在nacos中编辑权重,权重值越小,被访问的概率越小
nacos环境隔离

yml中添加namespace的id

nacos临时实例 临时实例当服务停止时,nacos后台会立即删除该服务,但如果为非临时实例时,停止时,后台会保留该服务

nacos与eureka区别

nacos统一配置
- 在nacos官网中进行配置添加
- 导config依赖、添bootstrap.yml,配置nacos地址、当前环境、服务名称、文件后缀名。这些决定了程序启动时去nacos读取哪个文件
服务启动--bootstrap.yml--nacos设置好的配置

nacos配置热更新
Nacos中的配置文件变更后,微服务无需重启就可以感知。
- 在controller中添加@RefreshScope

2.添加config文件,使用@ConfigurationProperties实现字动刷新

nacos多环境

http客户端Feign
代替RestTemplete执行http请求发送操作
配置 导依赖、开注解、写接口


自定义Feign配置

配置Feign日志
1.yml

2.注解

性能优化
- 使用连接池代替默认的URLConnection
- 日志级别,最好用basic或none
导依赖、yml配置连接池

Feign最佳实践
- 继承

耦合度高
2.抽取

资源浪费
网关
- 身份、权限确认
- 负载均衡
- 限流
gateway 非阻塞 性能好
搭建:
导依赖

yml

实现流程

路由断言工厂 predicateFactory

路由过滤器

filters、default-filters

全局过滤器 globalfilter


过滤器执行顺序

cors跨域

Docker

一个系统进程,性能高

镜像image是docker打包,容器container是镜像中的应用程序运行形成的进程

systemctl start docker
镜像操作

命令可以通过docker -help查看
容器操作

docker run --name xx -p xx:xx -d xx
docker ps/logs xx/logs -f xx 新建\查看\日志

docker exec it xx bash 进入修改

docker start/stop xx 开始/停止容器
docker rm xx 移除
数据卷

