2016 - 2025

感恩一路有你

springboot如何配置日志 springboot项目启动以前的日志不见了?

浏览量:1731 时间:2023-05-19 20:32:42 作者:采采

springboot项目启动以前的日志不见了?

又几种另一个是通过配置文件的来电脑配置。若干种是通过logback.xml配置文件的通过配置。简单要说的是和logback.xml这两个配置文件都是装在src/main/resources目录下的。

RabbitMQ如何通过持久化保证消息99.99%不丢失?

当下主流的消息系统有RabbitMQ、RocketMQ、ActiveMQ等,而RabbitMQ是基于Erlang开发,即便并发性、连接时间表现都挺好的。

RabbitMQ消息可靠性是靠什么实现程序的?消息可靠性是RabbitMQ的一大特点,RabbitMQ靠什么实现方法消息可靠性的呢?反正应该是实际消息不易脱妆化来实现的,那样就避免了服务异常(重启后、宕机)下消息和队列丢了的风险。

消息自然持久化是指RabbitMQ将内存中的数据(交换器Exchange、队列Queue、消息Message)落地之前到硬盘中储存,以以免发现异常导致内存中的数据丢失。

RabbitMQ要如何实现消息不易脱妆化?RabbitMQ中有所不同数据不易脱妆化是差别的,主要有:

1、交换器(Exchange)的自然持久化

交换器Exchange若丢了会会影响现消息的写入,我们在创建家族Exchange时必须委托durable为true意思是持久化。

2、队列(Queue)的自然持久化

在上面第一步操作中,在创建角色交换器时就算系统设置了durable为true后,Exchange不会弄丢,只不过里面的队列依然会全部丢失。怎么只要队列不持久化呢?同时是在创建角色队列时指定你durable为true再试一下。

3、消息(Message)的持久化

上面两步操作后,在重启RabbitMQ后,可是Exchange和Queue肯定不会丢失,但Queue里的消息是会全部丢失的,那如何绝对的保证消息不易脱妆化不弄丢呢?我们系统设置消息投递模式(deliveryMode)为2即代表消息自然持久化。

消息不持久化并又不能100%绝对的保证数据不丢失当我们将交换器/队列/消息都设置里了自然持久化依旧不能不能100%能保证数据不会全部丢失。这反正挺好的理解,内存中的数据中写入硬盘是要时间的,突然断电、宕机重起等情况时消息很有可能没来得及落地后,这样这些消息就有弄丢的可能。

消息自然持久化会带来性能问题我们清楚消息持久化是将内存中的数据写入到硬盘中,但硬盘的读写速度远不如我内存,所以我传送消息不持久化后会影响大RabbitMQ的性能。

以上是我的观点,相对于这个问题大家是怎末平等的眼光的呢?欢迎在下方评论区讲解~我是科技领域创作者,十年互联网从业经验,欢迎关注我打听一下许多科技知识!

消息 持久化 RabbitMQ Exchange 内存

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。