Java延时队列

在业务开发中常常存在超时处理机制,比如订单多久没支付自动取消,命令执行太久自动取消执行之类。可以使用redis的key过期订阅机制,也可以使用rabbitmq的死信队列,亦或是循环轮训数据库等等来实现。在业务量小,无中间件的情况下,就可以考...

基于Redis的分布式锁

在集群多机器环境中,为了避免并发导致的冲突问题,就会使用到分布式锁,同一时刻,集群中只有获取到锁的节点能够执行处逻辑,如下: import org.springframework.beans.factory.annotation.Autow...

JAVA策略模式

在多场景的代码中,需要根据前端传来的参数走不同的代码逻辑,例如: public static void main(String[] args) { String code = "前端传来的场景码"...

kafka架构

Kafka是一个分布式的消息队列,其架构如下: Broker :一台 kafka 服务器就是一个 broker。一个集群由多个 broker 组成。一个 broker可以容纳多个topic; Producer :消息生产者,就是向 k...