摘要:
1.什么是微服务雪崩 因为微服务之间相互调用,链路错综复杂,有可能因为一个服务不可用,导致整个服务都出现过慢或者次联失败的情况,这个情况叫服务雪崩 2.什么是熔断降级 熔断: 当服务的错误率达到一定程度时,断路器会打开,直接返回错误而不是尝试调用业务。一段时间后,断路器会处于半开状态尝试调用服务,如
阅读全文
posted @ 2025-03-22 17:02
笙3146487032
阅读(5)
推荐(0)
摘要:
有两种方式 1.设置消息唯一ID 在发送消息时给消息指定一个唯一ID,当消费消息完成消息ID记录在redis中 消费时根据消息ID查询redis判断是否已消费,如果已消费则不在消费 2.通过业务状态判断 业务判断就是基于业务本身的逻辑或状态判断是否是重复的请求或消息,通过业务状态判断如果已经处理则不
阅读全文
posted @ 2025-03-22 15:52
笙3146487032
阅读(103)
推荐(0)
摘要:
保证消息的可靠性可以从几个方面去处理 1.首先在发送消息时开启重试策略,避免因为短暂的网络问题导致发送消息失败。 2.生产者开启确认机制,即开启confirm机制和return机制,这样每个消息都有自己的一个confirm机制, 如果消息正确到达交换,返回ack,未到达交换机,返回nack。如果消息
阅读全文
posted @ 2025-03-22 15:24
笙3146487032
阅读(59)
推荐(0)
摘要:
1.TM通知TC,开启全局事务。TC记录全局事务开启状态。 2.TM通知RM,开始执行分支事务,RM向TC注册分支事务 3.RM执行自己的业务,并提交事务。同时在提交事务前后向unlog记录日志 4.RM向TC汇报自己的事务执行成功或失败的状态 5.TM通知TC,提交或回滚全局事务。TC检查全局事务
阅读全文
posted @ 2025-03-17 21:06
笙3146487032
阅读(13)
推荐(0)
摘要:
当使用OpenFeign时如果在书写调用方法时如 @GetMapping List queryItemByIds(@RequestParam("ids") Collection ids); 请求参数错写为路径参数@PathVariable会导致调用目标服务时无法准确识别并调用方法 导致出现异常
阅读全文
posted @ 2025-03-15 21:14
笙3146487032
阅读(33)
推荐(0)
摘要:
当在多线程中添加数据时,会出现添加数据失败的问题,原因可能是因为在多线程中无法获取到用户id导致自动填充字段出现问题,所以在自动自动填充字段的类中添加捕捉异常的判断 使其在抛出异常时,不会自动添加用户
阅读全文
posted @ 2025-03-08 20:41
笙3146487032
阅读(7)
推荐(0)
摘要:
PDFBox加载某个字体文件时会找不到文件报错 但是使用命名行是可以找到,所以只需要进入文件,把mstmc.ttf删除就可以解决了 C:\Users\Administrator>cd /windows/fonts C:\Windows\Fonts>dir /s mstmc* 驱动器 C 中的卷是 系
阅读全文
posted @ 2025-03-03 16:19
笙3146487032
阅读(119)
推荐(0)
摘要:
使用put请求进行修改操作时,如果请求参数dto中id与实体类的id类型不一致,进行克隆操作时,会导致id未能赋值, 从而前端接收不到id使得 条件判断为新增操作 由PUT请求变为POST请求导致发送请求时,发送错误请求
阅读全文
posted @ 2025-02-26 10:29
笙3146487032
阅读(7)
推荐(0)
摘要:
sql语句未修改前 List depts = deptService.listByIds(deptIds); Map<Integer, String> deptsMap = depts.stream().collect(Collectors.toMap(Dept::getId, Dept::getN
阅读全文
posted @ 2025-02-18 21:15
笙3146487032
阅读(7)
推荐(0)