96SEO 2026-02-19 18:22 1
的属性介绍1.1、Type队列类型1.2、Name队列名称1.3、Durability声明队列是否持久化1.4、Auto

是否自动删除1.5、Exclusive1.6、Arguments队列的其他属性例如指定DLX死信交换机等
delete2.1.1、RabbitConfig配置类关键代码2.1.2、发送消息2.1.3、接收消息2.1.4、启动类2.1.5、配置文件application.yml2.1.6、配置文件pom.xml2.1.7、测试
2.2、Arguments参数属性之x-overflow和x-max-length2.2.1、RabbitConfig配置类2.2.2、其他代码同上2.2.3、测试
2.3、Arguments参数属性之x-single-active-consumer2.3.1、消费者2.3.2、RabbitConfig配置类2.3.3、测试
2.4、Arguments参数属性之x-max-length-bytes2.5、Arguments参数属性之x-max-priority2.5.1、设置优先级2.5.2、测试
声明队列是否持久化代表队列在服务器重启后是否还存在默认值为true;
如果为true当没有消费者连接到这个队列的时候队列会自动删除默认为false
exclusive属性的队列只对首次声明它的连接可见并且在连接断开时自动删除
1.6、Arguments队列的其他属性例如指定DLX死信交换机等
设置队列溢出行为当达到队列的最大长度时消息会发生什么有效值为Drop
队列所能容下消息的最大长度当超出长度后新消息将会覆盖最前面的消息类似于Redis的LRU算法
x-single-active-consumer默认为false
限定队列的最大占用空间当超出后也使用类似于Redis的LRU算法
指定队列关联的死信交换机有时候我们希望当队列的消息达到上限后溢出的消息不会被删除掉而是走到另一个队列中保存起来
8.x-dead-letter-routing-keyString
messageProperties.setPriority(8);
队列类型x-queue-modelazy懒队列在磁盘上尽可能多地保留消息以减少RAM使用如果未设置则队列将保留内存缓存以尽可能快地传递消息
11、x-queue-master-locatorString用的较少
每个queue都有一个master节点所有对于queue的操作都是事先在master上完成之后再slave上进行相同的操作
每个不同的queue可以坐落在不同的集群节点上这些queue如果配置了镜像队列那么会有1个master和多个slave。
基本上所有的操作都落在master上那么如果这些queues的master都落在个别的服务节点上而其他的节点又很空闲这样就无法做到负载均衡那么势必会影响性能
的分配有几种策略可以在queue声明的时候使用x-queue-master-locator参数或者在policy上设置queue-master-locator或者直接在rabbitmq的配置文件中定义queue_master_locator有三种可供选择的策略
2client-local选择与client相连接的那个服务节点host
org.springframework.amqp.core.*;
org.springframework.beans.factory.annotation.Value;
org.springframework.context.annotation.Bean;
org.springframework.context.annotation.Configuration;Configuration
{Value(${my.exchangeName})private
exchangeName;Value(${my.queueName})private
ExchangeBuilder.directExchange(exchangeName).build();}//创建队列Beanpublic
QueueBuilder.durable(queueName).autoDelete().build();}Beanpublic
BindingBuilder.bind(queueName).to(exchangeName).with(info);}
org.springframework.amqp.core.Message;
org.springframework.amqp.core.MessageBuilder;
org.springframework.amqp.rabbit.core.RabbitTemplate;
org.springframework.beans.factory.annotation.Value;
org.springframework.context.annotation.Bean;
org.springframework.stereotype.Service;import
rabbitTemplate;Value(${my.exchangeName})private
world.getBytes()).build();rabbitTemplate.convertAndSend(exchangeName,info,message);log.info(消息发送完毕发送时间是new
org.springframework.amqp.core.Message;
org.springframework.amqp.rabbit.annotation.RabbitListener;
org.springframework.stereotype.Component;Component
queueNamequeue.queueProperties.01;RabbitListener(queues{queueName})public
message){log.info(接收到队列的消息{},new
com.power.service.MessageService;
org.springframework.boot.ApplicationArguments;
org.springframework.boot.ApplicationRunner;
org.springframework.boot.SpringApplication;
org.springframework.boot.autoconfigure.SpringBootApplication;import
javax.annotation.Resource;SpringBootApplication
{SpringApplication.run(Application.class);}Overridepublic
rabbit_11_quque_properties01_autoDeleterabbitmq:host:
exchange.queueProperties.01queueName:
queue.queueProperties.012.1.6、配置文件pom.xml
xmlnshttp://maven.apache.org/POM/4.0.0
xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.power/groupIdartifactIdrabbit_11_quque_properties01_autoDelete/artifactIdversion1.0-SNAPSHOT/versionnamerabbit_11_quque_properties01_autoDelete/namepropertiesmaven.compiler.source8/maven.compiler.sourcemaven.compiler.target8/maven.compiler.targetproject.build.sourceEncodingUTF-8/project.build.sourceEncoding/propertiesparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.6.13/versionrelativePath//parentdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion1.18.24/version/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-amqp/artifactId/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build/project2.1.7、测试
2.2、Arguments参数属性之x-overflow和x-max-length
org.springframework.amqp.core.*;
org.springframework.beans.factory.annotation.Value;
org.springframework.context.annotation.Bean;
org.springframework.context.annotation.Configuration;import
{Value(${my.exchangeName})private
exchangeName;Value(${my.queueName})private
ExchangeBuilder.directExchange(exchangeName).build();}//创建队列Beanpublic
HashMap();arguments.put(x-overflow,reject-publish);//队列的溢出行为默认是删除头部此处设置未拒绝发布当队列满了之后不再接收消息arguments.put(x-max-length,5);//队列的最大长度return
Queue(queueName,true,false,false,arguments);}Beanpublic
BindingBuilder.bind(queue).to(directExchange).with(info);}
我们发现当设置为arguments.put(“x-overflow”,“reject-publish”);和arguments.put(“x-max-length”,5);时我们发现队列里只存放了5条消息。
后边的678三条消息并没有进入队列。
2.3、Arguments参数属性之x-single-active-consumer
org.springframework.amqp.core.Message;
org.springframework.amqp.rabbit.annotation.RabbitListener;
org.springframework.stereotype.Component;import
{RabbitListener(queues{queue.properties.03})public
String(body);log.info(1监听到的消息是msg,接收的时间是new
Date());}RabbitListener(queues{queue.properties.03})public
String(body);log.info(2监听到的消息是msg,接收的时间是new
Date());}RabbitListener(queues{queue.properties.03})public
String(body);log.info(3监听到的消息是msg,接收的时间是new
Date());}}2.3.2、RabbitConfig配置类
org.springframework.amqp.core.*;
org.springframework.beans.factory.annotation.Value;
org.springframework.context.annotation.Bean;
org.springframework.context.annotation.Configuration;import
{Value(${my.exchangeName})private
exchangeName;Value(${my.queueName})private
ExchangeBuilder.directExchange(exchangeName).build();}//创建队列Beanpublic
Queue(queueName,true,false,false,arguments);}Beanpublic
BindingBuilder.bind(queue).to(directExchange).with(info);}
2.4、Arguments参数属性之x-max-length-bytes
如下图所示修改RabbitConfig类设置队列的x-max-length-bytes属性值为100
2.5、Arguments参数属性之x-max-priority
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback