点击上方菜单栏help
在最下面加上
-Djava.io.tmpdir=D:\devSoft\IDEA2023.2\temp2024
package com.atguigu.interview2.utils;
import java.math.BigDecimal;
/**用于高精确处理常用的数学运算
@auther zzyy
@create 2024-05-02 17:21
*/
public class ArithmeticUtils
{
//默认除法运算精度
private st...
代驾:优惠券
一、优惠券领取
1、优惠券需求
1.1、优惠券说明
优惠券是一种代驾服务的抵扣凭证,可用于打折或者现金优惠代驾服务的特色活动,可以让驾车人享受到更加方便快捷、经济实惠的代驾服务。
优惠券的难点在于如何设计优惠券规则,及并发超售问题,现在我们就着手开发这部分功能。
乘客端有优惠券频道,未使用、未领取及已使用三个菜单,在结束代驾服务后,乘客支付时可...
原因:默认是文件配置,但是只有service-order的nacos配置中有Seata的分组配置,起了冲突
解决:把nacos中的service-order-dev.yaml配置中的seata配置注销掉就好了
操作025:Shovel
一、启用Shovel插件
rabbitmq-plugins enable rabbitmq_shovel
rabbitmq-plugins enable rabbitmq_shovel_management
二、配置Shovel
三、测试
1、测试计划
节点
交换机
路由键
队列
深圳节点
exchange.sho...
操作024:Federation插件
一、简介
Federation插件的设计目标是使RabbitMQ在不同的Broker节点之间进行消息传递而无须建立集群。
它可以在不同的管理域中的Broker或集群间传递消息,这些管理域可能设置了不同的用户和vhost,也可能运行在不同版本的RabbitMQ和Erlang上。Federation基于AMQP 0-9-1协...
操作018:Stream Queue
一、启用插件
说明:只有启用了Stream插件,才能使用流式队列的完整功能
在集群每个节点中依次执行如下操作:
# 启用Stream插件
rabbitmq-plugins enable rabbitmq_stream
# 重启rabbit应用
rabbitmqctl stop_app
rabbitmqctl sta...
操作017:仲裁队列
一、创建仲裁队列
说明:鉴于仲裁队列的功能,肯定是需要在前面集群的基础上操作!
1、创建交换机
和仲裁队列绑定的交换机没有特殊,我们还是创建一个direct交换机即可
交换机名称:exchange.quorum.test
2、创建仲裁队列
队列名称:queue.quorum.test
3、绑定交换机
路由键:routing.k...
操作016:集群搭建
一、安装RabbitMQ
1、前置要求
CentOS发行版的版本≥CentOS 8 Stream
镜像下载地址:https://mirrors.163.com/centos/8-stream/isos/x86_64/CentOS-Stream-8-20240318.0-x86_64-dvd1.iso
RabbitMQ安装方式官方指南:
...
操作015:优先级队列
一、创建相关资源
1、创建交换机
exchange.test.priority
2、创建队列
queue.test.priority
x-max-priority
3、队列绑定交换机
二、生产者发送消息
1、配置POM
<parent>
<groupId>org.springframework...
操作014:惰性队列
一、创建惰性队列
1、官网说明
队列可以创建为默认或惰性模式,模式指定方式是:
使用队列策略(建议)
设置queue.declare参数
如果策略和队列参数同时指定,那么队列参数有更高优先级。如果队列模式是在声明时通过可选参数指定的,那么只能通过删除队列再重新创建来修改。
2、基于策略方式设定
# 登录Docker容器
docke...
操作013:事务消息之生产者端
一、测试代码
1、引入依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<...
操作012:延迟插件
一、插件简介
官网地址:https://github.com/rabbitmq/rabbitmq-delayed-message-exchange
延迟极限:最多两天
二、插件安装
1、确定卷映射目录
docker inspect rabbitmq
运行结果:
"Mounts": [
{
...
操作011:死信
一、测试相关准备
1、创建死信交换机和死信队列
常规设定即可,没有特殊设置:
死信交换机:exchange.dead.letter.video
死信队列:queue.dead.letter.video
死信路由键:routing.key.dead.letter.video
2、创建正常交换机和正常队列
注意:一定要注意正常队列有诸多限定...
操作010:消息超时
一、队列层面设置
1、设置
别忘了设置绑定关系:
2、测试
不启动消费端程序
向设置了过期时间的队列中发送100条消息
等10秒后,看是否全部被过期删除
二、消息层面设置
1、设置
import org.springframework.amqp.core.Message;
import org.springframework....