每次发版都有几十个 502,终于找到原因了 我们服务是 2019 年 11 月上的 Kubernetes,1.16 版本,Deployment 配 4 个副本。从上线那天起,每次滚动发布,网关那边都会报几十个 502,持续时间一两秒。因为量不大、用户基本无感,一直没排。 直到 1 月初做活动,晚上八
同事问我:为什么加个依赖就能用了 8 月中旬,刚入职的同事跑来问我一个他觉得"很魔幻"的事:他只在 pom 里加了 spring-boot-starter-data-redis,然后 @Autowired private StringRedisTemplate 就能用了,中间没写任何配置类。他问我
加一个"送新人券"的需求,我改了注册方法 4 月底产品提了个小需求:新用户注册成功后自动发一张 20 元的无门槛券。我打开 UserService.register(),120 行,里面已经塞了校验、插库、发欢迎短信、埋点上报、初始化用户配置五件事。 我在第 87 行插了三行调用发券的代码。提 PR
测试提了个 bug:数据没回滚 3 月初做批量导入功能,测试提了个单:导入 1000 条订单,第 500 条数据有误抛了异常,预期全部回滚,结果前 499 条都写进库了。 我第一反应是不可能,@Transactional 明明标着。看代码: @Service public class OrderIm
同事的循环依赖启动报错,我的没报错 2 月底做权限模块重构,同事写的代码一启动就挂: org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'roleServ
同事问:我这个接口没写 limit,为什么只返回 10 条 1 月底,隔壁工位的同事喊我过去看个怪事。他的导出接口调了两次 Mapper:第一次查订单列表,第二次查订单状态统计。结果统计接口只返回了 10 条数据,而他的 SQL 里压根没有 limit。 我把 MyBatis 的 SQL 日志打开(
注入的 service 是 null,我对着空指针查了一下午 十二月初写了个定时任务,跑起来第一行就 NPE: @Component public class OrderTimeoutJob { @Autowired private OrderService orderService
改了 application.yml 重启了八次,配置还是不生效 十一月底给服务加一个超时配置,我在 application.yml 里加了这么一行: http: connect-timeout: 5000 然后重启,打印出来还是默认值 3000。我以为没编译进去,clean 重新打包,还是
扣了库存没生成订单,@Transactional 一个字没生效 十一月中旬那次上线后,客服陆续接到投诉:用户付款成功,但订单列表里查不到。我翻数据库,发现 t_stock 的库存扣了,t_order 里却没有对应记录。同一个 @Transactional 方法里的两个操作,一个成了一个没成。 这种"
前端说:你的接口又报 400 了 那天下午前端同事在工位上喊我,说提交表单一直 400,请求都发出去了。我看了下 Chrome 的 Network 面板: Request URL: /order/list Request Method: GET Status Code: 400 Bad Reques