04 2024 档案

Apache HttpClient
摘要:- 阅读全文
posted @ 2024-04-28 17:21 王江飞高级开发工程师 阅读(5) 评论(0) 推荐(0) 编辑
RabbitMQ的属性详解
摘要:RabbitMQ的属性涵盖了多个方面,这些属性共同构成了RabbitMQ消息传递系统的核心功能。以下是对RabbitMQ属性的详细解释: 消息属性 message-id:这是消息的唯一标识,由RabbitMQ自动生成。它确保每条消息在整个系统中都有唯一的标识,便于追踪和管理。 delivery-ta 阅读全文
posted @ 2024-04-28 00:26 王江飞高级开发工程师 阅读(140) 评论(0) 推荐(0) 编辑
RabbitMQ生产者生产消息原理
摘要:RabbitMQ生产者生产消息的原理主要涉及与RabbitMQ服务器的连接、通道创建、交换机和队列的声明,以及消息的发送等步骤。以下是详细解析: 1. 建立连接与通道 首先,生产者需要与RabbitMQ服务器建立连接。这个连接是通过TCP/IP协议实现的,一旦连接成功,生产者就可以在连接上创建一个或 阅读全文
posted @ 2024-04-28 00:16 王江飞高级开发工程师 阅读(28) 评论(0) 推荐(0) 编辑
RabbitMQ消费者端消费消息原理
摘要:RabbitMQ是一个开源的消息代理和队列服务器,用于通过轻量级和可靠的消息传递在服务器之间进行通信。在RabbitMQ中,消费者是负责从队列中获取并处理消息的重要组件。 (1)消费者的注册:在RabbitMQ中,消费者首先需要注册到消息队列中才能接收消息。注册过程通常包括创建一个TCP连接到Rab 阅读全文
posted @ 2024-04-28 00:12 王江飞高级开发工程师 阅读(161) 评论(0) 推荐(0) 编辑
RabbitMQ的重试机制
摘要:RabbitMQ的重试机制是一种强大的功能,它允许在消息处理失败时自动重试,从而提高系统的可靠性和稳定性。下面是对RabbitMQ重试机制的详细解释: 一、重试机制的触发条件 RabbitMQ的重试机制通常在以下情况下被触发: 1、消息发送失败:当消息发送到RabbitMQ服务器时,如果因为网络问题 阅读全文
posted @ 2024-04-28 00:04 王江飞高级开发工程师 阅读(1186) 评论(0) 推荐(0) 编辑
RabbitMQ消息的重复消费原因和解决策略
摘要:RabbitMQ中的消息重复消费可能由多种原因导致,以下是一些常见的因素: 1、网络问题:在消息处理过程中,当MQ向消费者推送消息后,消费者需要向MQ返回ack以告知所推送的消息已经消费成功。然而,由于网络波动等原因,可能导致消费者向MQ返回的ack丢失。在这种情况下,MQ在长时间内(如一分钟)未收 阅读全文
posted @ 2024-04-27 23:58 王江飞高级开发工程师 阅读(1910) 评论(0) 推荐(1) 编辑
确保RabbitMQ中的消息不丢失的方案策略
摘要:确保RabbitMQ中的消息不丢失,需要从多个层面进行考虑和优化。以下是一些关键步骤和策略: 确保生产端消息发送成功: 1、开启RabbitMQ事务机制:生产者发送数据之前,可以开启RabbitMQ的事务,即使用channel.txSelect方法。如果消息没有成功被RabbitMQ接收,生产者会收 阅读全文
posted @ 2024-04-26 23:56 王江飞高级开发工程师 阅读(125) 评论(0) 推荐(0) 编辑
RabbitMQ处理消费者过载的策略
摘要:RabbitMQ的消费者过载指的是在RabbitMQ消息队列系统中,消费者(即处理消息的应用程序或进程)无法及时处理从队列中接收到的消息,导致消息在队列中积压,进而可能引发系统性能下降、延迟增加或甚至系统崩溃等问题。 引起消费者过载的原因: 高负载产生的流量:当生产者向RabbitMQ发送大量消息, 阅读全文
posted @ 2024-04-26 23:35 王江飞高级开发工程师 阅读(58) 评论(0) 推荐(0) 编辑
RabbitMQ实际应用中解决消息的重复消费、消息丢失、消息的顺序性等问题方案
摘要:在RabbitMQ的实际应用中,防止消息的重复消费、消息丢失以及确保消息的顺序性是非常重要的。以下是一些常见的方法和策略来解决这些问题: 1、 防止消息重复消费: 消息幂等性:确保消费者的处理逻辑具备幂等性,即多次处理相同的消息不会产生额外的影响。这样即使消息被重复消费,也不会导致不一致状态。 消息 阅读全文
posted @ 2024-04-26 22:43 王江飞高级开发工程师 阅读(668) 评论(0) 推荐(0) 编辑
RabbitMQ工作原理详解
摘要:RabbitMQ的工作原理主要涉及生产者、消费者、交换机、队列和绑定等组件的交互。以下是其工作原理的详细解释: 1、生产者(Producer): 生产者负责创建消息并将其发送到RabbitMQ服务器。这些消息可以包含任何类型的数据,如JSON、XML等。 生产者首先与RabbitMQ服务器建立连接, 阅读全文
posted @ 2024-04-26 22:31 王江飞高级开发工程师 阅读(315) 评论(0) 推荐(0) 编辑
Redis在分布式架构中有哪些作用
摘要:Redis在分布式架构中起到了多个关键作用,主要包括以下几点: 数据缓存:Redis可以作为分布式系统的缓存层,存储热点数据或计算结果,从而减少对数据库的访问压力,提高系统的响应速度和吞吐量。通过将数据缓存在Redis中,系统可以更快地获取数据,减少网络延迟和数据库查询时间。 会话管理:在分布式系统 阅读全文
posted @ 2024-04-22 21:45 王江飞高级开发工程师 阅读(58) 评论(0) 推荐(0) 编辑
SpringBoot使用JDBC、批量、分批次、线程池实现大数据量的更新操作
摘要:思路: (1)使用JDBC的batchUpdate实现批量更新。 (2)对原集合进行指定数量的切割处理(例如:原集合有10万数据量,切割数据量是一万,需切割十次),切割方法参考java.util.List的subList方法。 (3)使用Java线程池执行操作。 1. batchUpdate批量处理 阅读全文
posted @ 2024-04-18 23:19 王江飞高级开发工程师 阅读(1507) 评论(0) 推荐(0) 编辑
Kafka如何保证消息的顺序性
摘要:Kafka发布模式通过一系列机制来确保消息的顺序性,特别是在分区内部。以下是关键要点: 1. 分区机制: Kafka的核心机制之一是分区(Partition)。每个主题(Topic)可以被分割成多个分区,而消息在发布时会被追加到特定的分区中。在每个分区内部,消息是按照它们被追加的顺序来存储的,因此保 阅读全文
posted @ 2024-04-14 12:08 王江飞高级开发工程师 阅读(1742) 评论(0) 推荐(0) 编辑
Kafka做消息队列的原理
摘要:Kafka作为消息队列的实现原理主要基于其分布式架构和日志式存储机制。以下是Kafka作为消息队列工作的核心原理: 1. 分布式架构与分区: Kafka采用分布式架构,将数据分布存储在多个节点(称为Broker)上,以实现数据的水平扩展和并行处理。 Kafka中的消息流被组织成主题(Topic),每 阅读全文
posted @ 2024-04-11 22:49 王江飞高级开发工程师 阅读(70) 评论(0) 推荐(0) 编辑
Redis的Lua脚本使用方法详解
摘要:Redis的Lua脚本功能允许用户执行一段自定义的Lua代码,该代码可以访问和操作Redis的数据。这个功能对于执行复杂的操作或事务性的操作特别有用,因为它可以保证操作的原子性。 下面是Redis的Lua脚本使用方法的详细解释: 1. EVAL命令 Redis提供了EVAL命令来执行Lua脚本。这个 阅读全文
posted @ 2024-04-11 13:52 王江飞高级开发工程师 阅读(668) 评论(0) 推荐(0) 编辑
java 使用Redis的INCR命令或Lua脚本来实现分布式应用生成唯一性ID
摘要:在Java中使用Redis的INCR命令或Lua脚本来生成分布式应用中的唯一性ID是一个常见的做法。以下是如何实现这两种方法的简要说明。 1、使用Redis的INCR命令 Redis的INCR命令是一个用于递增存储在键中的整数值的原子操作。如果键不存在,那么它将被初始化为0再进行递增操作。 命令格式 阅读全文
posted @ 2024-04-11 11:17 王江飞高级开发工程师 阅读(394) 评论(0) 推荐(0) 编辑
java分布式应用生成唯一性ID的方案
摘要:在Java分布式应用中生成唯一性ID是一个常见的需求。以下是一些常用的方案: 1. UUID(Universally Unique Identifier): UUID是一个128位的字符串,通常按照8-4-4-4-12的格式呈现,例如:550e8400-e29b-41d4-a716-44665544 阅读全文
posted @ 2024-04-11 10:28 王江飞高级开发工程师 阅读(252) 评论(0) 推荐(0) 编辑
Springboot+Nacos配置中心动态读取配置
摘要:待补充 阅读全文
posted @ 2024-04-10 22:50 王江飞高级开发工程师 阅读(17) 评论(0) 推荐(0) 编辑
Docker常用命令个人学习心得
摘要:Docker的常用命令涵盖了容器的创建、管理、镜像的下载与推送等多个方面。 1、镜像管理 docker ps:列出所有正在运行的容器。 docker ps -a:显示所有的容器,包括未运行的。 docker tag [现有镜像名]:[现有标签] [新镜像名]:[新标签]:为现有的镜像创建一个新的标签 阅读全文
posted @ 2024-04-10 22:48 王江飞高级开发工程师 阅读(8) 评论(0) 推荐(0) 编辑
Linux开发、运维常用命令个人心得总结
摘要:1、ls:列出目录内容 ls 是“list”的缩写,。它是Linux系统中用于列出目录内容的标准命令。 -l:长格式显示,包括文件权限、所有者、大小等信息。 -a:显示所有文件,包括隐藏文件。 -h:以易读的格式显示文件大小(如K、M、G)。 2、cd :改变当前工作目录 用于改变当前工作目录的命令 阅读全文
posted @ 2024-04-10 22:47 王江飞高级开发工程师 阅读(24) 评论(0) 推荐(0) 编辑
Minio存储文件
摘要:Minio是一个高性能的对象存储服务器,它可以在Linux、MacOS和Windows等操作系统上运行,并通过命令行界面或RESTful API进行管理。 本文为用Minio存储文件。 1. 在pom.xml文件中添加MinIO的Java客户端库依赖 <dependency> <groupId>io 阅读全文
posted @ 2024-04-10 19:34 王江飞高级开发工程师 阅读(73) 评论(0) 推荐(0) 编辑
Prometheus+Alertmanager+Node_exporter监控系统并动态配置数据库告警规则发送动态通知策略告警
摘要:前提需求:告警规则和告警发送通知策略都动态配置在数据库,方便管理和随时修改、删除。Prometheus需要动态读取数据库配置的告警规则,并根据数据的通知策略(邮件、短信、钉钉、微信等)把告警发送出去。 需求分析:下面主要从表设计、组件配置、代码逻辑设计几个方面介绍。 1. 表设计 1.1 告警规则表 阅读全文
posted @ 2024-04-04 17:37 王江飞高级开发工程师 阅读(241) 评论(0) 推荐(0) 编辑

 
点击右上角即可分享
微信分享提示