当前位置: 首页 > news >正文

上海网站seoseodian建设银行企业理念

上海网站seoseodian,建设银行企业理念,做网站公司选智投未来,本机iis网站确保 RabbitMQ 的延时消息插件已经安装和启用。你可以通过执行以下命令来安装该插件#xff1a; rabbitmq-plugins enable rabbitmq_delayed_message_exchange 如果提示未安装#xff0c;以下是安装流程#xff1a; 查看mq版本#xff1a; 查看自己使用的 MQ#xff08;…确保 RabbitMQ 的延时消息插件已经安装和启用。你可以通过执行以下命令来安装该插件 rabbitmq-plugins enable rabbitmq_delayed_message_exchange 如果提示未安装以下是安装流程 查看mq版本 查看自己使用的 MQ消息队列的版本可以使用以下方法之一 查看 MQ 的安装目录或文档在 MQ 的安装目录中通常会包含一个关于版本信息的文件或文件夹例如 version.txt、README.md、docs 等。你可以查找这些文件其中应该包含有关 MQ 版本的信息。查看管理界面某些 MQ 提供了管理界面你可以通过浏览器登录管理界面在界面上查看版本信息。通常你需要提供相关的 URL、用户名和密码来访问管理界面。使用命令行工具有些 MQ 提供了命令行工具可以通过命令行查看版本信息。例如如果你使用的是 Apache Kafka则可以使用命令 kafka-topics.sh --version 来查看 Kafka 的版本号。查看依赖库或客户端如果你使用的是 MQ 的客户端库或者集成了 MQ 的框架可以查看相应的依赖库或客户端代码通常会在其文档或源代码中提供版本信息。下载插件 https://www.rabbitmq.com/community-plugins.html rabbitmq_delayed_message_exchange 选择对应的版本 点击rabbitmq_delayed_message_exchange-3.12.0.ez 进行下载 安装插件 进入MQ的安装目录中的plugins目录 把插件放入到plugins目录 进入sbin目录打开管理员控制台 执行一下命令 bash rabbitmq-plugins enable rabbitmq_delayed_message_exchange 显示类似信息即可 rabbitmq_delayed_message_exchange-3.12.0.ez 插件可以安装到 Linux 服务器上的 RabbitMQ。 要安装 RabbitMQ 插件你需要确保已经安装了 RabbitMQ 服务器并且具有适当的权限。以下是在 Linux 服务器上安装 RabbitMQ 插件的一般步骤 下载插件文件 rabbitmq_delayed_message_exchange-3.12.0.ez 到 Linux 服务器上。打开终端使用 cd 命令导航到 RabbitMQ 的安装目录通常默认安装位置是 /usr/lib/rabbitmq 或 /usr/local/sbin。如果不清楚安装位置可以使用 which rabbitmq-server 命令来查找 RabbitMQ服务器的位置。 运行以下命令将插件安装到 RabbitMQ 服务器中bash sudo rabbitmq-plugins enable rabbitmq_delayed_message_exchange如果命令成功执行将显示类似以下内容的消息 The following plugins have been enabled: rabbitmq_delayed_message_exchange Applying plugin configuration to rabbitlocalhost… started 6 plugins. 重启 RabbitMQ 服务器以使插件生效 bash sudo systemctl restart rabbitmq-server 完成以上步骤后rabbitmq_delayed_message_exchange 插件将安装并启用在 RabbitMQ 服务器上可以开始使用延迟消息交换功能。 请注意确保你已经正确下载了兼容你所使用的 RabbitMQ 版本的插件文件。 查看延时队列 确保你的项目中引入了 spring-rabbit 依赖。在你的 Spring Boot 配置文件中添加以下配置spring:rabbitmq:host: 127.0.0.1password: ***port: 5672username: ***virtual-host: ***这些属性是用于配置Spring框架中与RabbitMQ消息队列相关的属性。让我逐个介绍一下每个属性的作用 rabbitmq.host: 指定RabbitMQ服务器的主机地址。在这个示例中主机地址是127.0.0.1也就是本地主机。rabbitmq.port: 指定RabbitMQ服务器的端口号。默认的RabbitMQ端口号是5672因此在这个示例中端口号为5672。rabbitmq.username: 指定连接RabbitMQ服务器时使用的用户名。在这个示例中用户名是***。rabbitmq.password: 指定连接RabbitMQ服务器时使用的密码。在这个示例中密码是***。rabbitmq.virtual-host: 指定RabbitMQ服务器的虚拟主机。虚拟主机是RabbitMQ中用于隔离不同应用之间的消息队列的逻辑概念。在这个示例中虚拟主机是***。rabbitmq管理平台配置延时队列 直接使用 direct 类型的交换机是无法实现延时队列功能的。direct 类型的交换机是根据 Routing Key 进行精确匹配将消息发送到与 Routing Key 完全匹配的队列中而不会对消息进行延时投递。 如果你需要实现延时队列功能可以考虑使用 RabbitMQ 插件 rabbitmq_delayed_message_exchange 提供的 x-delayed-message 类型的交换机。该插件允许你在 RabbitMQ 中创建一个特殊类型的交换机支持延时消息的投递。 使用 x-delayed-message 类型的交换机你可以在发送消息时设置消息的头部属性作为延时时间并且消息将会在指定的延时时间之后被投递到相应的队列。 请注意使用 x-delayed-message 类型的交换机需要安装并启用 rabbitmq_delayed_message_exchange 插件。安装完成后你可以在 RabbitMQ 中创建该类型的交换机并按需使用延时队列功能。 当你在 RabbitMQ 中新增一个交换机时需要设置一些属性来定义该交换机的行为。下面是各个属性的详细介绍 Name名称交换机的名称用于标识该交换机。名称必须是唯一的。Type类型交换机的类型用于定义消息的路由方式。常见的交换机类型包括 direct、fanout、headers、topic 和 x-delayed-message。Durability持久化交换机是否持久化到磁盘。如果将此属性设置为 true则 RabbitMQ 会将该交换机保存到磁盘上以便在服务器重启后仍然存在。Auto delete自动删除是否在最后一个绑定到交换机的队列被删除后自动删除交换机。如果将此属性设置为 true则 RabbitMQ 会在没有任何队列绑定到该交换机时自动删除该交换机。Internal内部是否是一个内部交换机。如果将此属性设置为 true则该交换机只能被其他交换机使用而不能被客户端直接发送消息到该交换机。Arguments参数交换机的其他参数用于控制交换机的行为。Argument 的值可以是任何有效的 Erlang 对象。在设置延时队列时你需要使用 x-delayed-type 参数来指定该交换机的类型为 x-delayed-message并使用 x-delayed-message 的头部属性 x-delay 来指定消息的延迟时间。 通过配置这些属性Spring框架可以使用指定的主机、端口、用户名和密码来连接RabbitMQ服务器并在指定的虚拟主机中进行消息队列的操作。这样我们就可以在Spring应用程序中方便地使用RabbitMQ来实现消息的发送和接收。 在你的代码中使用 RabbitTemplate 的 convertAndSend() 方法发送消息到延时队列。同时设置消息的延时时间。import org.springframework.amqp.core.Message; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component;Component public class DelayedQueueExample {Autowiredprivate RabbitTemplate rabbitTemplate;public void sendMessageWithDelay(MessageDto messageDto, int delayInMillis) {rabbitTemplate.convertAndSend(my-delayed_exchange, sms.api.routing,messageDto, message - {message.getMessageProperties().setHeader(x-delay, delayInMillis);//毫秒return message;});System.out.println(Message sent to delayed queue.);} }在这个示例中我们使用 RabbitTemplate 的 convertAndSend() 方法发送消息到名为 delayed_exchange 的交换机并指定路由键为 ums.api.routing。我们还为消息设置了延时时间通过在 convertAndSend() 方法中使用 lambda 表达式修改消息的属性。 请注意你需要将 delayed_exchange 替换为实际的交换机名称根据你的需求修改路由键和消息体。此外确保 MessageDto 类是可序列化的并在你的项目中定义。 这样你的消息就会被发送到延时队列中等待指定的延时时间后才会被消费。 如果在 x-delayed-message 交换机中不设置延迟时间其行为与普通的 Direct 交换机非常相似。 Direct 交换机是 RabbitMQ 中最简单的一种交换机类型它将消息发送到与绑定键完全匹配的队列。当你使用 Direct 交换机时可以通过指定绑定键来路由消息到特定的队列。 x-delayed-message 交换机是一个插件提供的自定义交换机它允许你发送带有延迟的消息。你可以通过设置消息的 x-delay 属性来指定消息的延迟时间。当消息到达 x-delayed-message 交换机时交换机会根据消息的延迟时间将其暂时存储然后在延迟时间到达后将其转发到相应的队列。 如果在 x-delayed-message 交换机中不设置延迟时间即所有消息的 x-delay 属性都为零或未设置该交换机将表现得与 Direct 交换机相同。消息将立即被路由到匹配的队列没有任何延迟。 因此如果不需要延迟消息功能只需直接发送消息到 x-delayed-message 交换机它将像 Direct 交换机一样工作。如果需要延迟消息功能请确保为每条消息设置适当的 x-delay 属性以指定延迟时间。 已经创建好的交换机不能再更新type RabbitMQ 中的交换机类型是在创建时确定的一旦交换机创建后就无法直接修改其类型。要更改交换机的类型你需要按照以下步骤进行操作 创建一个新的交换机使用所需的类型。例如如果你想将交换机从 Direct 类型更改为 Fanout 类型可以创建一个新的 Fanout 交换机。将绑定到旧交换机上的队列和绑定迁移到新交换机。这可以通过解绑旧交换机和绑定新交换机来实现。解绑旧交换机使用命令或管理界面将所有队列从旧交换机解绑。这将使队列不再接收来自旧交换机的消息。绑定新交换机使用相同的绑定规则将队列绑定到新交换机上。这将确保消息可以通过新的交换机路由到正确的队列。确保在转移过程中不会丢失任何消息。你可以选择在迁移前停止消息发布者以确保没有新消息发送到旧交换机上。然后在完成旧交换机和新交换机之间的迁移后重新启动消息发布者。请注意在进行交换机类型更改时可能会涉及到一些风险和潜在问题因此建议在生产环境中小心操作并进行充分的测试。 另外如果你只是想更改交换机的属性而不是类型例如更改交换机的名称、持久性或其他属性你可以使用 RabbitMQ 的管理界面或命令行工具对交换机进行更新。 交换机类型区别 在 RabbitMQ 中有几种不同类型的交换机Exchange包括 direct、fanout、headers、topic 和 x-delayed-message。下面我将详细描述每种类型的区别 Direct直连交换机Direct 交换机是最简单的一种类型它将消息直接路由到与绑定键Binding Key完全匹配的队列。发送到 Direct 交换机的消息需要指定一个 Routing Key该 Routing Key 与队列绑定时指定的 Binding Key 进行匹配。Fanout扇形交换机Fanout 交换机会将消息广播到绑定到它的所有队列无论绑定键是什么。发送到 Fanout 交换机的消息会被转发到所有与之绑定的队列而 Routing Key 将被忽略。Headers标头交换机Headers 交换机使用消息的标头属性来进行匹配而不是使用 Routing Key。发送到 Headers 交换机的消息会根据标头属性的匹配情况被转发到相应的队列。Topic主题交换机Topic 交换机使用通配符和 Routing Key 的模式匹配来路由消息。发送到 Topic 交换机的消息的 Routing Key 是一个由多个单词组成的字符串这些单词用点号.分隔。消息的 Routing Key 将被与队列绑定时指定的 Binding Key 进行模式匹配符合匹配规则的消息将被路由到相应的队列。x-delayed-message延迟消息交换机x-delayed-message 交换机是 RabbitMQ 的一个插件提供的特殊类型的交换机它支持延迟消息的投递。x-delayed-message 交换机可以根据消息的头部属性中设置的延迟时间来进行延迟投递。使用 x-delayed-message 交换机时需要安装并启用 RabbitMQ 的 rabbitmq_delayed_message_exchange 插件。总结 Direct 交换机通过完全匹配 Routing Key 将消息发送到指定队列 Fanout 交换机广播消息到所有绑定的队列 Headers 交换机根据标头属性来匹配并转发消息 Topic 交换机通过模式匹配 Routing Key 来转发消息 x-delayed-message 交换机用于延迟消息的投递需要安装额外的插件。不同类型的交换机在消息路由和转发方式上有所不同选择正确的交换机类型有助于实现所需的消息传递逻辑。
http://www.tj-hxxt.cn/news/232099.html

相关文章:

  • 保定专门做网站的公司临沂网站模板
  • 成品网站 售卖爱设计网
  • 搭建个人视频网站个人网站要有什么
  • 新乡手机网站建设服务海南注册公司多少钱
  • woocommerce做零售网站化妆品网站建设目标与期望
  • 微信导购网站怎么做视频教学建网站软件有哪些
  • 数码庄园的网站建设公司苏州做网站企业
  • 山西阳泉王平 做网站河南网站建站系统平台
  • 培训中心网站建设论文网络营销十大成功案例
  • 网站核验单 没有网站 怎么办980网站
  • 网站关键词是什么网站建设扌首选金手指
  • wordpress怎么上传网站wordpress 短信
  • 自适应网站建设公司网站建设与运营合同
  • 专题网站建设策划百度外推发帖软件
  • 欧美电影免费网站广告平台
  • 网站被k后换域名 做301之外_之前发的外链怎么办关于网页设计的书籍
  • 南昌营销网站开发网易企业邮箱exchange
  • 怎样wordpress优化方案电子版
  • 网站服务器分流怎么做wamp搭建多个网站
  • 厦门专业网站建设建站渠道推广策略
  • 搜不到wordpress 网站东莞互联网
  • 网站建设的功能定位企业信息公示平台
  • 华为公司网站建设分析评价营销战略
  • 计算机基础网页制作题怎么做seo
  • 甘肃省兰州市建设厅网站那些网站可以找得到做货代的
  • 怎么快速建网站教程wordpress主题添加logo图片
  • 马鞍山网站设计价格呼伦贝尔市住房和城乡建设局网站
  • 阿里云自助建站模板武陟住房和城乡建设局网站
  • 新手怎样学校做网站网站内的链接怎么做
  • 怎么做企业网站二维码扫描wordpress 博客 很慢