自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 消息队列(RabbitMQ、RocketMQ、Kafka)

RocketMQ 是阿里巴巴开源的分布式消息中间件,专注于高性能、高吞吐量的场景,采用 Java 开发。Kafka 是由 LinkedIn 开发并开源的分布式流处理平台,专注于实时数据流的收集、存储和处理。消息队列优点缺点适用场景Kafka吞吐量非常大,性能非常好,技术生态完整功能比较单一分布式日志收集、大数据采集RabbitMQ消息可靠性高,功能全面吞吐量较低,消息积压会影响性能;Erlang 语言社区较小众企业内部系统调用RocketMQ高吞吐、高性能、高可用,高级功能非常全。

2024-11-29 13:30:18 1122

原创 消息中间件

使用场景提供了机制来避免消息发送到MQ过程中丢失。消息发送到MQ以后,会返回一个结果给发送者,表示消息是否处理正常失败后处理MQ默认是内存存储消息,开启持久化功能可以确保混村在MQ中的消息不丢失RabbitMQ支持消费者确认机制,即:消费者处理消息后可以向MQ发送回执,MQ收到回执后才会删除该消息,而则允许配置三种确认模式:进入队列的消息会被延迟消费的队列当一个队列中的消息满足下列情况之一时,可以成为死信()如果该队列配置了属性,制定了一个交换机,那么队列中的死信就会投递到这个交换机中,而这个交换机成为死信

2024-11-23 13:06:42 942

原创 MyBatis

加载运行环境和映射文件。构造会话工厂。会话工厂创建SqlSession对象(包含了执行SQL语句的所有方法)。操作数据库的接口,Executor执行器,同时负责查询缓存的维护。Executor接口的执行方法中有一个类型的参数,封装了映射信息。输入参数映射。输出结果映射。

2024-11-21 13:23:07 802

原创 Spring Cloud

服务注册是指当一个服务启动时,它会向一个服务注册中心注册自己,通常会提供一些元数据,如服务名称、地址(IP和端口)、健康检查URL等。这样,其他服务就可以通过服务注册中心找到这个服务。服务发现是指服务在运行时如何动态地找到它所依赖的其他服务的过程。当服务A需要调用服务B时,它会查询服务注册中心,获取服务B的地址信息,然后进行调用。服务实例定期向 发送心跳,以证明自己是健康的。如果 在一定时间内没有收到心跳,它可能会认为该服务实例不健康,并将其从服务列表中移除。本地负载均衡,在调用微服务接口时候,会在注册

2024-11-21 10:27:18 1185

原创 设计模式简述

所有的产品都公用一个工厂,如果新增产品,则需压迫修改代码,违反开闭原则是一种编程习惯,可以借鉴这种变成思路抽象产品:定义了产品的规范,描述了产品的主要特征和功能具体产品:实现或继承抽象产品的子类具体工厂:提供了创建产品的方法,调用通过该方法来获取产品。

2024-11-19 17:54:35 997

原创 多线程面试

程序由指令和数据组成,但指令要运行,数据要读写,就必须将指令加载至CPU,数据加载至内存。在指令允许过程中还需要用到磁盘、网络等设备。进程就是用来加载指令、管理内存、管理IO的。

2024-11-19 11:55:02 1197

原创 MySQL

索引在项目中非常常见帮助MySQL高效获取数据的数据结构主要用来提高数据检索效率降低数据库的I/O成本索引列可以对数据进行排序降低数据排序的成本也能减少CPU的消耗。

2024-11-15 16:45:35 887

原创 JAVA集合

(数组结构,线程安全)(数组结构,非线程安全)ArrayList底层是动态数组初始容量为0,第一次添加数据后初始化容量为10扩容后是原来容量的1.5倍,每次扩容都需要拷贝数组ArrayList再添加数据的时候Arrays.asList转List后,修改数组List用来toArray转数组,修改List(链表结构,非线程安全)

2024-11-14 18:36:09 617

原创 Redis

对于设置了过期时间的key,缓存在某个时间点过去的时候,下好这个时间点对于这个key有大量的并发请求过来。这些请求发现缓存过期,一般都会请求数据库,然后把数据库的数据再重新加载到缓存中,这个时候大量的请求可能瞬间会把数据库压垮。缓存雪崩的意思是,设置缓存的时候采用了相同的过期时间,简单一点就是很多个缓存的key设置成了某个时刻同时过期,这样在key过期的时候,请求全都请求到了数据库,数据库的瞬时压力过大而导致了雪崩。

2024-11-05 13:32:05 951

原创 编码规则(订单流水号生成)

在电商、金融等业务场景中,订单流水号的作用不言而喻。它不仅能唯一标识一个订单,还能方便地追踪订单状态。本文将分享一种使用Java编写的编码规则,用于生成订单流水号。

2024-10-25 16:20:24 1584 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除