摘要:
1、使用RabbitMq实现延时队列方法1 2、基于我们的业务我们使用下面这种方式实现延时队列 1、导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</ 阅读全文
摘要:
1、使用RabbitMq实现延时队列方法1 2、基于我们的业务我们使用下面这种方式实现延时队列 1、导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</ 阅读全文
摘要:
1、定时任务存在的问题 即任务过期时间为30min,任务在第31min过期,但是在第60分钟才被扫描到 2、延时队列 是先设置一个过期队列,里面消息过期后不会丢弃而是通过交换机放到另一个队列中。从这个队列中取出过期消息进行处理 一般我们使用队列过期时间实现延迟队列。 因为队列满足先进先出原则,后进来 阅读全文
摘要:
seata的AT模式不适合高并发的项目,因为它需要加锁来保证回滚。因此我们的订单服务方法中就尽量不能使用@GlobalTransactional来管理分布式事务。 因此在订单服务中,我们使用下面这种方法来通知库存服务 即通过消息队列来实现(给库存服务发送消息) 阅读全文
摘要:
https://seata.io/zh-cn/ seata使用Seata AT模式控制分布式事务的步骤: 1、每一个想控制分布式事务的服务对应的数据库都需要创建一个UNDO_LOG 表 CREATE TABLE `undo_log` ( `id` bigint(20) NOT NULL AUTO_I 阅读全文
|