自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 设计模式-

定义一个责任链最高层接口,多个责任链模式接口,每个责任链模式接口多个实现类,把每个责任链模式的实现类根据定义好的Order排序存到List,再根据对应责任链模式存到Map。定义策略接口,多个实现类,定义策略工厂,构造方法通过Spring 容器自动获取实现类List集合,遍历List按照每个实现类策略类型逐个插入Map。当执行业务逻辑前有很多条校验时采取责任链模式提升代码复用性和扩展性。底层技术实现动态代理,上层通过切面思想和注解优化了实现。

2025-12-18 23:42:21 146

原创 项目背书-

1.通过canal订阅Mysql的binlog日志,将增量数据通过MQ发送给消费者同步到Redis。3.XXL-JOB 每隔一分钟将Redis数据同步到Mysql。2.通过消息队列发送给消费者,消费者通过线程池并行发送邮件。

2025-12-18 22:22:08 395

原创 RabbitMQ,RocketMQ,Kafka

《主流消息队列架构对比》摘要:本文对比分析了RabbitMQ、RocketMQ和Kafka的核心架构设计。RabbitMQ采用Exchange-Queue绑定机制,支持多种路由模式,通过Channel复用提升性能;RocketMQ通过NameServer管理路由信息,支持集群/广播消费模式;Kafka采用分区副本机制,通过Controller实现高可用。三者均提供消息确认、幂等性处理等机制保障可靠性,但在路由设计、负载均衡和容错机制上各有特点,适用于不同业务场景。

2025-10-27 11:00:13 934

原创 Redis,MongoDB

Redis和MongoDB是两种主流的NoSQL数据库,分别针对不同场景设计。Redis是基于内存的键值数据库,支持多种数据结构(String、Hash、List、Set等),适用于缓存、分布式锁、排行榜等高并发场景,具有极快的读写性能。MongoDB是文档型数据库,采用BSON格式存储灵活的结构化数据,适合存储业务数据、用户信息等需要复杂查询的场景,支持索引、聚合和事务。两者在现代架构中常配合使用,Redis作为缓存层加速访问,MongoDB作为主数据存储层。

2025-10-20 11:05:26 1042

原创 Mysql

把数据按规则拆分到多个数据库或数据表中,以提升系统的并发性能和存储能力。

2025-10-15 17:00:04 690

原创 框架面试题

Spring会为被切入的类创建一个代理对象,只有代理对象里的方法才会被拦截,添加额外逻辑,所以用this调用内部方法会失效。AOP实现的常用注解。

2025-10-14 17:13:26 241

原创 JVM面试题

指定的目录),用于扩展核心类功能,父加载器是 Bootstrap ClassLoader。负责加载 JDK 扩展库(位于。

2025-10-13 10:26:51 836

原创 Java多线程面试题

文章摘要: 本文系统介绍了Java多线程编程的核心概念和实现方式。主要内容包括:1) 线程创建的三种方式(继承Thread、实现Runnable、实现Callable+FutureTask);2) 线程状态转换及基本方法(sleep/wait/notify);3) 线程同步机制(synchronized原理、ReentrantLock特性对比);4) 高级并发工具(volatile、CAS、ThreadLocal、线程池优化策略);5) 并发集合和同步工具类(CountDownLatch、CyclicBar

2025-09-30 14:50:22 1219

原创 java集合面试题

本文总结了Java集合框架中主要数据结构及其线程安全实现方案。核心内容包括:List接口的ArrayList(动态数组)、LinkedList(双向链表)和Vector(已过时);Map接口的HashMap(数组+链表+红黑树)、LinkedHashMap(有序遍历)和TreeMap(红黑树有序);Set接口基于对应Map实现。线程安全方案包括Collections.synchronized包装类、CopyOnWriteArrayList(读写分离)、ConcurrentHashMap(CAS+桶锁)和Co

2025-09-24 17:27:14 681

原创 B+树,红黑树,跳表

文章摘要: 本文系统性地介绍了四种常见的数据结构:二叉搜索树(BST)、平衡二叉树(AVL)、红黑树和B+树,以及跳表。首先分析了二叉搜索树作为二分查找结构的优势,但指出了其可能退化为链表的缺点。接着介绍了平衡二叉树的严格平衡特性及其旋转调整机制。然后详细讲解了红黑树的平衡规则和实现原理,包括节点着色、旋转操作等。对于B+树,重点比较了其与B树的区别,解释了MySQL选择B+树作为索引结构的原因。最后介绍了跳表的实现原理,并分析了Redis选择跳表而非红黑树或B+树的原因。全文通过代码示例详细展示了各数据结

2025-09-23 22:59:26 1308

原创 java基础面试题

Java语言具有三大核心特性:1) 跨平台性,通过JVM实现"一次编写,到处运行";2) 面向对象特性,包括封装、继承和多态三大特性;3) 自动内存管理,通过垃圾回收机制自动回收无用对象。此外,Java还支持抽象类与接口、内部类、反射机制、注解等功能特性。Java 8引入了Lambda表达式、函数式接口、Stream API等新特性,大大提升了开发效率。这些特性共同构成了Java强大的语言体系,使其成为企业级应用开发的主流选择。

2025-09-19 11:01:17 867

空空如也

空空如也

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

TA关注的人

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