rabbitmq docker
RabbitMQ 延迟消息的实现——延迟消息插件
步骤: 1. 把资料中的 rabbitmq_delayed_message_exchange-3.9.0.ez 复制到docker的mq容器的插件目录 2. 执行命令 docker exec -it mq rabbitmq-plugins enable rabbitmq_delayed_messag ......
docker compose 一键部署zookeeper集群
compose.yml 文件 services: zoo1: image: zookeeper:3.8.3 restart: always hostname: zoo1 ports: - 2181:2181 environment: ZOO_MY_ID: 1 ZOO_SERVERS: server. ......
RabbitMQ高可用集群的搭建部署(Centos7)
高可用集群架构 节点域名 操作系统 RabbitMQ版本 Erlang版本 iamdemo.tp-link.com Centos7.9 3.8.28 23.3-2 iamdemo2.tp-link.com Centos7.9 3.8.28 23.3-2 iamdemo3.tp-link.com Ce ......
docker container中变更timezone
当前使用了playwright官方python镜像: https://playwright.dev/python/docs/docker 但在实际使用时,时间总是显示为UTC0时间 正好相差8个小时,前面是jenkins打印时间,后面部分是container内部时间 查了网上各种方法,总共有几种: ......
docker绕过firewalld防火墙的解决方法
firewalld配置的防火墙策略对docker内服务不生效 解决 vim /etc/docker/daemon.json { ... "experimental" : true, "iptables": false } # 重启 docker systemctl daemon-reload sys ......
RabbitMQ 延迟消息的实现——死信交换机(不推荐)
生产者给MQ发送 带过期时间的消息: @GetMapping("/mq07")public void sendTTLMessage(){ //第四个参数:后置消息处理器。用后置消息处理器给消息加过期时间 rabbitTemplate.convertAndSend("simple.direct", " ......
RabbitMQ 消费者可靠性——业务幂等性
如何保证业务是幂等的? 方案一: 生产者、消费者都配置上 setCreateMessageIds(true)。配好后,生产者给MQ发消息,消息就会带上自动生成的 id。将来消费者拿到消息后,就可以获取到 id,把 id保存起来 做唯一匹配 代码示例: package com.itheima;impo ......
RabbitMQ避免重复消费
在Java中,可以使用消息队列来实现消息的异步处理,其中常用的消息队列有 RabbitMQ、ActiveMQ、Kafka 等。 什么是幂等性? 幂等性是指无论操作执行多少次,都是得到相同的结果,而不会产生其他副作用。 在rabbitMQ中 什么是消息重复消费? 同一条消息在MQ中被消费多次 出现重复 ......
Nginx docker compose 挂载
Nginx docker compose 挂载 version: "3" services: nginx: image: nginx:1.22.1 ports: - "80:80" volumes: - "/home/nginx/html:/usr/share/nginx/html" - "ngin ......
centos7 docker-ce
言Docker 使用越来越多,安装也很简单,本次记录一下基本的步骤。 Docker 目前支持 CentOS 7 及以后的版本,内核要求至少为 3.10。 Docker 官网有安装步骤,本文只是记录一下,您也可以参考 Docker CE Install on CentOS 环境说明CentOS 7(M ......
Docker本地部署私人Firefox火狐浏览器并远程访问(宝藏教程)
Firefox是一款免费开源的网页浏览器,由Mozilla基金会开发和维护。它是第一个成功挑战微软Internet Explorer浏览器垄断地位的浏览器之一。 在Docker中打开Firefox意味着我们将在一个Docker容器中运行Firefox浏览器。这对于一些特殊的测试场景非常有用,例如需要 ......
RabbitMQ 消费者可靠性——失败重试机制
效果: 消费者抛异常后,会本地重试,如果本地重试次数达到最大重试次数之后,直接给队列返回reject,队列收到后就会丢弃该消息,也就是策略的第一种 但就这样把删了不太好,所以有了失败消息处理策略 第二种 ImmediateRequeueMessageRecoverer:消费者抛异常后,会本地重试,如 ......
RabbitMQ 消费者可靠性——消费者确认
代码示例: 在消费者的 appplication.yml 文件中加入配置: spring: rabbitmq: listener: simple: acknowledge-mode: auto ......
RabbitMQ 生产者可靠性——生产者确认原理
生产者确认更加注重 消息发送失败时该怎么办 消息发送失败 采用的是确认机制(有两种确认机制:Publisher Confirm 和 Publisher Return) ......
RabbitMQ 生产者可靠性——生产者重连
我们配置的这个失败后的重连机制仅仅是发送者连接MQ失败 的 连接失败重试,如果消息发送抛出异常时不会重试,因为它只是连接失败的重试,不是消息发送的重试 spring: rabbitmq: host: 192.168.88.130 port: 5672 virtual-host: /hmall use ......
基于Docker搭建 Mysql8.0 主从架构
1、创建主从数据库文件夹 mkdir -p /usr/local/mysql/master1/conf mkdir -p /usr/local/mysql/master1/data mkdir -p /usr/local/mysql/slave1/conf mkdir -p /usr/local/m ......
Docker运行centos7
Docker 安装 centos7 : 步骤: 1.使用Docker创建虚拟网络: # 创建一个网段为192.168.0.0/24的虚拟网络,名字为centosNet docker network create --subnet=192.168.0.0/24 centosNet # 查看 docke ......
docker
FROM 基础镜像,父类镜像 RUN 容器构建时执行命令 shell命令 exec命令 EXPOSE 对外暴露的端口 WORKDIR 落脚点,指定默认进来后的目录 USER 权限 ENV 设置环境变量 VOLUME 挂载 COPY 将宿主机目录拷贝进镜像 ADD 同COPY CMD 启动容器后干的事 ......
在Docker中安装Redis
拉取Redis镜像:首先,你需要从Docker Hub上拉取Redis的镜像。你可以使用以下命令来完成这个操作1: docker pull redis:latest 创建数据目录和配置文件:在你的宿主机上创建一个目录来存放Redis的配置文件和数据。你还需要为这个目录设置适当的权限1: mkdir ......
docker 安装mysql 8.0.26
sudo docker pull mysql:8.0.26 创建数据目录和配置文件:在你的宿主机上创建一个目录来存放MySQL的配置文件和数据。你还需要为这个目录设置适当的权限1: sudo mkdir -p /data/mysql8.0/conf /data/mysql8.0/data /data ......
docker 安装 nacos
mkdir -p /opt/nacos/init.d mkdir -p /opt/nacos/logs cd /opt/nacos/init.d touch custom.properties 在custom.properties文件中填写如下配置: management.endpoints.web ......
RabbitMQ 消息转换器
代码示例: 1. 引入依赖 <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId></dependency> 2. 在启动类中创建Bean package ......
RabbitMQ Java代码声明队列和交换机(方法二)
代码示例:创建一个Direct交换机,与两个队列绑定(direct.queue1、direct.queue2) 既是消费者,又可以创建交换机和队列,以及交换机与队列的 RoutingKey @RabbitListener(bindings = @QueueBinding( value = @Queu ......
RabbitMQ Java代码声明队列和交换机(方法一)
交换机和队列的声明一般写在消费者模块里 代码示例: package com.itheima.config_RabbitMQ;import org.springframework.amqp.core.*;import org.springframework.context.annotation.Bea ......
快速配置mysql(非docker)
蠢新从大二开始用起mysql,直到工作了还需要去网上找博客查怎么装。 Windows不管,因为我自己的工位电脑已经有了。 以下的操作为假设你有一台腾讯云的服务器,或者版本至少在20以上的Ubuntu。root用户登录。 使用包管理器安装mysql8.0 apt-get update apt-get ......
RabbitMQ Topic交换机
代码示例: 1. 新建两个队列 2. 创建交换机,名字叫 hmall.topic,类型选择 topic 3. hmall.topic 交换机绑定第一步的两个队列,绑定过程中填写 RoutingKey 4. 编写消费者代码监听这两个队列 @RabbitListener(queues = "topic. ......
RabbitMQ Direct交换机
代码示例: 1. 交换机绑定了两个队列,并给它们设置了RoutingKey 2. publisher 发送者给 Direct 交换机发消息时,第二个参数指定 RoutingKey: @GetMapping("/mq03")public void mq03(){ String exchangeName ......
RabbitMQ 发送消息到交换机
发送消息到交换机的代码: @GetMapping("/mq02")//发送消息给交换机public void mq02(){ String exchangeName = "hmall.fanout"; String msg = "hello, 每个人"; //三个参数:交换机名称、RoutingKe ......
RabbitMQ Fanout交换机
容易搞混的点: 1. 假如 publisher 给Fanout交换机发送了一条消息,那么Fanout交换机会给每一个绑定到它身上的队列都发送这条消息,也就是说有多少个队列跟它绑定了,这条消息就有几份,每个队列都收到一份。 2. 假如一个队列绑定了多个消费者,那么该队列在给消费者投递消息时就是轮询,一 ......