springcloud
眼泪落在琴弦
这个作者很懒,什么都没留下…
展开
-
springcloud+vue前后端分离服务器部署
springcloud+vue前后端分离服务器部署1.springcloud启动所有服务2.安装nginx并自启动(https://blog.csdn.net/qq_42923536/article/details/118340316)3.进入nginx/conf/nginx.conf server { listen 80; server_name localhost; #charset koi8-r; #access原创 2021-06-29 17:51:56 · 1059 阅读 · 0 评论 -
Nacos连接mysql 8.0报错
Nacos连接mysql 8.0报错 首先下载与数据库对应的mysql驱动 下载地址:https://mvnrepository.com/artifact/mysql/mysql-connector-java 进入nacos目录创建plugins\mysql文件夹,将驱动放入,重启nacos即可原创 2021-06-10 23:30:42 · 303 阅读 · 0 评论 -
sleuth+zipkin
sleuth+zipkin服务链路追踪1.微服务是分布式架构,按业务划分服务单元,分布式一般有很多服务单元,服务单元数量众多,业务复杂,如果出现错误和异常,很难定位,因为一个服务可能调很多服务,所有必须实现分布式链路追踪,跟进看有哪些服务参与和参与顺序,从而达到每个请求清晰可见,很快能定位问题2.span(跨度):基本工作单元3.trace(跟踪):一系列span组成的结构4.Annotation(标注):记录事件,用核心注解定义请求的开始和结束5.导入spring-cloud-starter-s原创 2021-04-27 16:10:11 · 217 阅读 · 0 评论 -
Sentinel
Sentinel(服务熔断降级限流) 1.引入spring-cloud-starter-alibaba-sentinel 2.下载sentinel服务器 3.配置application地址信息 4.在控制台调整参数【默认所以流控设置保存在内存中,重启失效】 5.想实时监控需每个微服务导入actuator,并配置application暴露所有端口 6.自定义sentinel流控返回数据 7.配置sentinel类 8.限流可以在可视化界面进行控制 9.远程调用出现问题调用的原创 2021-04-27 16:09:07 · 122 阅读 · 0 评论 -
Seata分布式事务解决方案
Seata分布式事务解决方案1.给每个微服务数据库创建回滚日志表2.下载seata服务器3.导入spring-cloud-starter-alibaba-seate4.启动seata服务器,对应依赖版本5.解压后在conf文件中registry.conf 注册中心配置 修改注册中心6.所有想要用到分布式事务的微服务使用seata DatasourcePraxy 代理自己的数据源 写seata配置7.每个微服务都必须导入seata服务器里的registry和file.conf文件8.fi原创 2021-04-27 16:03:03 · 171 阅读 · 0 评论 -
分布式事务
分布式事务本地事务: 本地事务调用远程服务,如果远程服务假失败(其实成功了但是没告知调用方成功执行)或远程服务执行完成,下方方法出现异常回滚,导致已执行远程服务无法回滚。 本地事务失效问题:同一对象事务方法互调默认失效。 原因 绕过代理对象。 解决:引入spring-boot-starter-aop @EnableAspectJAutoProxy 开启动态代理 使用动态代理AopContext去互相调用分布式事务: 分布式系统经常出现的异常:机器延机,网络异常,信息丢失等等原创 2021-04-27 15:57:05 · 84 阅读 · 0 评论 -
RabbitMQ
RabbitMQRabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开发中应用非常广泛消息中间件 1.提升异步通信,扩展解耦 2.消息代理和目的地 3.目的地形式:队列(queue),主题(topic) 4.点对点式:一个发送者一个接收者 5.发布订阅:发布原创 2021-04-27 15:51:12 · 114 阅读 · 0 评论 -
redisson分布式锁
Redisson具有内存中数据网格功能的Redis Java客户端基于高性能的异步和无锁Java Redis客户端和Netty框架。 1.可重入锁,A调用B。AB都需要同一锁,此时可重入锁就可以重入,A就可以调用B。不可重入锁时,A调用B将死锁 2.读写锁:写锁是一个排它锁(互斥锁),读写是共享锁,写锁没释放读就必须等待,读锁没释放写锁也需等待 3.闭锁:当所有线程锁都走完了以后,可以使用分布式闭锁机制 4.信号量:可以用来做分布式限流操作 5.缓存数据一致性的问题:原创 2021-04-27 14:47:43 · 284 阅读 · 0 评论