https
-
缓存+数据库(DB)一致性问题解决方案分析!
没有一项技术是完美的,任何一项技术都存在驳论。CAP 理论也告诉我们,没有完美无缺!所以缓存一致性问题,分布式架构一致性问题,缓存与数据库不一致问题等都没有完美的解决方案。只有最适…
-
电商系统高并发场景中的缓存 DB 数据一致性问题!
电商系统中存在非常多的高并发场景,而高并发场景又存在非常多的缓存 DB 等数据一致性问题。这些问题具体是怎么造成的,今天我们一起来看图说话! 对应高并发系统,系统的压力一般都在后端…
-
详解 AbstractErrorWebExceptionHandler 类在 WebFlux 全局异常处理中的使用
看过源码的都知道,所有的框架基本上都会给你提供多条路,多个实现方式。WebFlux 也是一样,除了上一章中的 DefaultErrorAttributes,它还提供了 Abstra…
-
WebFlux 的全局异常处理 DefaultErrorAttributes 详解
上一章我们用 onErrorResume 和 onErrorReturn 来处理 WebFlux 中的异常,但是这种处理方式效率不高,只能针对具体的方法。那么有没有和 Spring…
-
详解 Webflux 中的 onErrorResume 和 onErrorReturn
webflux 并不算一门新技术,它出自 Spring,所以 Spring 中的一些特性它都有,包括 SpringMVC 中的一些注解它也可以沿用。没看过 webflux 教程的,…
-
一网打尽 @ExceptionHandler、HandlerExceptionResolver、@controlleradvice 三兄弟!
把 @ExceptionHandler、HandlerExceptionResolver、@controlleradvice 三兄弟放在一起来写更有比较性。这三个东西都是用来处理异…
-
从电商系统来学习 Spring 中的事件机制 ApplicationEventPublisher
事件机制在一些大型项目中被经常使用,于是 Spring 专门提供了一套事件机制的接口,方面我们运用。本文来说说 ApplicationEventPublisher 的使用。 在设计…
-
详解 @RequestMapping 中的 consumes 和 produces
@RequestMapping 注解非常的强大,Spring MVC 和 SpringBoot 中都会用到这个注解。要学会 @RequestMapping 的用法,就需要从它的原理…
-
从电商系统订单状态说状态模式!
状态模式,听过的人可能不是很多,它不在我们熟知的 23 中设计模式之内。但它归属与行为型模式中的一种。今天我们一起来学习学习状态模式! 在状态模式(State Pattern)中,…
-
Redis 中ZREVRANGEBYSCORE(zrangeByScoreWithScores) 使用不当导致的分页 Bug!
最近我们的电商系统中在大促时出现了一个分页 Bug,问题产生的原因就是 Redis 的 ZREVRANGEBYSCORE 指令使用不当导致的。表现在 java 代码中就是…