rbmq 消息队列
解耦
流量削峰
异步调用
六种模式
1,简单模式 一个消费者
2,工作模式 多个消费者负载均衡
合理分发:手动ACK.QOS=1
持久化:队列持久化,消息持久化
3,发布和订阅 fanout交换机
4,路由模式 路由键 绑定键
5,主题模式 Topic交换机
6,rpc异步调用
rocketmq
顺序消息
事务消息(可靠消息)
数据吞吐量更大
rocketmq的消息都是磁盘存储,默认三天删除
刷盘模式
同步刷盘 rocketmq收到消息,存储消息后再向生产者发送反馈
异步刷盘 rocketmq 收到消息,先向生产者反馈,再存储消息
springcloud ZUUl-API网关
统一的调用入口
1,zuul依赖
2,yml配置路由转发规则
默认规则:如果不配置,zuul会根据注册表的注册信息,完成自动配置。最好自己手动配置,避免注册表信息不全,自动配置不完整。
yml文件配置
3,添加注解@Enablezuulproxy
统一的权限校验
添加过滤器,判断用户权限
自定义过滤器。继承过滤器父类zuulfilter
只需要添加@component注解,zuul会完成自动配置
集成ribbon
默认启用负载均衡,没有启用重试(不推荐启用重试)
启用重试:1, 添加spring-retry依赖
2,yml配置启用重试:zuul.retryable=true
3,重试参数有默认值,可以不配置。
集成histrix
默认已经启用了hystrix,不用做任何基础配置。
直接可以写降级代码:
实现fallbackprovider接口。按接口规则来实现降级代码,在实现类上添加@component注解 就会自动配置 自动生效。
zuul和feign zuul不推荐重试 feign不推荐hystrix
都可以进行远程调用,都可以集成ribbon和hystrix
config配置中心
集中管理和维护配置文件
安装git后分享项目到本地仓库
配置中心的客户端
新添加配置文件 bootstrap。yml
bootstrap。yml是引导配置,先于application。yml加载
在 bootstrap。yml中,设置连接配置中心,来下载应用配置,再根据下载的配置启动应用。
1,eureka连接地址
2,从eureka发现配置中心
3,连接配置中心
4,下载自己的配置
在linux系统搭建solr服务器
搭建solr服务器
1,首先需要安装jdk
2,配置环境变量 vim/etc/profile 按i进入编辑模式,下拉到文件末尾,添加环境变量,export JAVA_HOME=usr/local/jdk名字
export PATH=$JAVA_HOME/bin:$PATH 最后保存信息并推出
3,让环境变量立即生效
source etc/profile
4,确认生效
Java -version
Javac -version
solr服务器 全文检索引擎服务器
直接解压缩后 直接命令启动
启动命令:bin/solr start -force
lucene
倒排索引
luceneAPI
链路跟踪
监控整条调用链路的执行情况
sleuth:用来产生跟踪产生日志,只需要添加sleuth依赖,0配置。就可以看到链路跟踪。产生的日志数据发送给zipkin。
或者通过rabbitmq转发给zipkin。
zikpin配置使用rabbitmq转发