自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java面试深度解密:Spring Boot、Redis、日志优化、JUnit5及Kafka事务核心技术解析

请解释Spring Boot的自动配置原理?哪些关键注解参与了这一过程?:Spring Boot通过标记核心配置类,通过和判断依赖是否存在并自动注入bean。实现原理涉及加载META-INF/spring.factories中的配置,逐个加载并实例化配置类。例如Tomcat的自动嵌入通过判断是否存在web环境。(点头):那如何解决多个配置类的配置冲突?:可通过指定配置前缀,或使用指定优先加载的配置文件。另外,通过@Value的默认值机制和的资源覆盖策略。:请举例说明Redis紧急缓存击穿的处理方案?

2025-05-05 14:48:24 541

原创 Java大厂面试实战:Spring Cloud、Kafka、Spring Security核心技术深度解析

通过Ribbon和RestTemplate的集成,在调用服务时从Eureka注册中心获取服务实例列表,结合内置的策略(轮询/随机)选择目标节点,并通过Retry机制处理失败。使用@KeyHints注解自定义验证逻辑,校验JWT中的roles字段控制接口访问。复杂场景推荐分页插件PageHelper,在拦截ParametersHandler时自动添加分页逻辑,支持物理分页与逻辑分页切换。:采用Hystrix的断路器机制,当某服务调用失败次数超过阈值时,断路器会打开改走降级逻辑。那服务雪崩如何预防?

2025-05-04 10:14:52 286

原创 Java大厂硬核面试:Flink流处理容错、Pomelo JVM调优、MyBatis二级缓存穿透防护与Kubernetes服务网格实战解析

Pomelo实现:1. 基于Corretto 8 JVM的 RED 链路诊断(Recent、Eden、Dead)2. 使用AsyncPi GC减少STW时间。与GraalVM的AOT编译相比,Pomelo更适合长周期运行的服务,而GraalVM在冷启动性能上具有优势。配合Prometheus的custom metrics server实现基于QPS的水平扩缩容。:请解释Pomelo JVM调优方案并对比与GraalVM的差异?:设计一个处理10万+QPS的秒杀系统需要的技术方案和技术选型。

2025-05-01 16:09:32 1198

原创 顶级大厂Java面试全记录:Dubbo服务治理、R2DBC反应式数据库、Lombok代码优化、ELK日志分析与WebSocket实时通讯实战

Dubbo使用Registry中心(如ZooKeeper)存储服务提供者地址,消费者订阅服务节点变化。配置重试次数,默认不重试集群下所有存活的Provider实例(非相同实例重试)。:请解释Dubbo如何实现服务发现和负载均衡,并演示编写HelloWorld服务的最简配置?写出心跳检测配置代码。:假设要实现千万级日志采集与实时分析系统,请设计ELK技术栈部署架构。:方法返回成功后,调用链路如何实现失败自动重试?:通过STOMP协议实现消息传输。

2025-04-29 21:42:17 825

原创 大厂Java面试深度解析:Dubbo服务治理、WebSocket实时通信、RESTEasy自定义注解与C3P0连接池配置实践

注解开启端点,Servlet容器(如Tomcat)在连接请求的Upgrade头中检测到WebSocket协议时切换处理模式。:Dubbo通过Registry协议将服务地址注册到ZooKeeper,消费者订阅服务节点变更。:WebSocket握手阶段的HTTP请求如何处理?:请解释Dubbo服务注册发现的完整流程,以及Sentinel如何实现流量控制?:在自研API网关中如何实现与Nginx的协议解析兼容?:通过Spring Cloud Gateway的。

2025-04-29 21:32:41 365

原创 Java大厂面试突击:从Spring Boot自动配置到Kafka分区策略实战解析

技术选型需要Spring Boot (作为基础) + Spring MVC (文件传输) + MyBatis + JPA (数据处理) + Apache POI (Excel操作) + Redis (幂等处理),关键点包括:1. 使用@Async异步处理上传 2. 基于POI SXSSF模式处理百万级导出 3. 通过Redis分布式锁控制同时导入数量。:在金融交易系统中采用Brave + Zipkin方案,通过动态插入Span上下文(TraceId、ParentId)实现跨微服务追踪。

2025-04-27 20:48:17 1467

原创 互联网大厂Java面试实战:Spring Boot自动配置、Kafka分区策略、Spring Security认证流程、MyBatis缓存机制与Prometheus监控排错

例如设置server.port属性时,通过@ConfigurationProperties绑定到ServerProperties类,在存在配置值时替换默认端口值。,通过HTTP get请求访问/actuator/prometheus端点,将采集的内存指标传给Prometheus服务器,再通过Grafana创建时序监控面板查看堆内存使用率趋势。:你的Spring Security配置可以支持JWT令牌,适合作为微服务的认证方案。请写出生产者配置样例。:请说明Spring Boot的自动配置机制如何实现,以。

2025-04-24 22:51:49 296

原创 【大厂爆笑面试】JVM卡死+xlbog的自白:我的女朋友是唯一单例

前者写得快因为女朋友直率,后者查得慢像追女神需要时间!我直接把两个key当作男朋友和女朋友放一起行吗?:Spring Cloud中RabbitMQ和RocketMQ的核心区别?:系统显示你回答正确率37%,我们会根据你的女朋友反馈决定录用结果。:最后一个问题,Docker容器如何实现进程隔离?用女朋友的排他性锁?名字很长的隔离技术?(突然想起女朋友)*就像我和我女朋友分房住!:谈谈对领域驱动设计(DDD)的理解?堆是对象住的地方,栈是方法的…:如何解决微服务之间的数据一致性?:分布式锁的实现方式有哪些?

2025-04-24 22:32:26 398

原创 Java面试实战:面试官与水货程序员的搞笑对话,核心知识点全解析!

请先自我介绍。你简历上写精通Java核心知识,那说说final关键字的作用?:我…我是xbhog!Final关键字嘛…嗯…(清嗓子)就是可以同时修饰类、方法和变量,被final修饰的类不能继承,方法不能重写,变量赋值一次后不能改!(挤牙膏式回答):*(扶眼镜)*回答正确,给你递块糖…接下来,HashMap底层实现是什么?(眼睛发亮)散列表!它通过key的hashCode重新计算索引,然后把值存进去!扩容的时候是复制桶…对吧老师?(递糖被无视)

2025-04-24 21:52:36 251

原创 互联网大厂Java面试实战:程序员与面试官的魔幻对话录

重写则是...比如我重写了老板的签到系统用docker跑?:堆(heap)是装对象的,栈(stack)...放方法的?:持久化就是不让消息丢失对吧...把消息存在硬盘里?:对的,它通过@EnableAutoConfiguration注解和...(XBHOG突然打断)(扶眼镜):你的比喻...还算恰当。(瞥向天花板):Redis的String类型实际是字节数组结构...我们进入最后一轮提问。:最后一个问题,重载(Overload)和重写(Override)的区别是什么?:会像...像双十一搞促销用链表连接?

2025-04-24 14:51:38 319

原创 Java面试实战模拟:面试官VS水货程序员,核心技术大拷打

xbhog:有Abort,CallerRuns,Discard...业务里用到促销秒杀时?面试官:(微笑)接下来问个线程问题:synchronized和ReentrantLock有什么区别?xbhog:(擦汗)简单!xbhog:(表情凝固)那个...Lock显式释放锁?xbhog:(慌乱)那个是标注配置类的!xbhog:都是解决对象创建问题?:对象分配在堆区(Young/Old),偏向锁失败后升级为轻量级锁...面试官:(点头记录)嗯,这个JVM新对象分配流程呢?面试官:那线程池的拒绝策略都有哪些?

2025-04-22 20:35:13 215

原创 Java面试大厂那些事:严肃面试官VS搞笑水货程序员2

xbhog:嗯...是用hash算法存储键值对!xbhog:(拍桌)动态代理!xbhog:(疯狂摇摆)加索引!xbhog:(愣住)那个...好像会出问题?xbhog:(抓头发)那个...定期重写?xbhog:(抓狂)比如...比如...数据消失?面试官:(整理文件)今天就到这里,我们会在3个工作日内通知你。xbhog:线程拒绝?xbhog:轮询、随机、权重...就像餐厅安排上菜顺序!面试官:(点头)不错,那如何解决哈希冲突?面试官:(点头)但如何避免AOF文件过大?

2025-04-20 15:51:04 184

原创 互联网大厂Java面试实录:严肃面试官与水货程序员的搞笑对决

核心线程数、最大线程数、队列...还有拒绝策略!(突然卡壳)反正就是线程池嘛!嘛,就是数组加链表加红黑树!(突然结巴)呃...反正就是很快!:一级缓存是会话级别的,二级缓存是全局的!(信心不足)还有...禁止指令重排序?:好的,今天的面试就到这里,你先回去等通知吧。就是发消息后等确认!:不错,回答得很清晰。的一级缓存和二级缓存有什么区别?:...(扶额)那你能说一下。:xbhog,你能说一下。:...(点头)那你知道。的负载因子是多少吗?

2025-04-20 15:28:34 264

原创 Java大厂面试:面试官与水货程序员的幽默对话

Java内存模型(Java Memory Model, JMM)描述了Java程序中各种变量(线程共享变量)在虚拟机中的访问规则,以及在JVM内存中的存储方式。Spring是一个全面的企业级应用开发框架,而SpringBoot是Spring的一个子项目,旨在简化Spring应用的创建和部署。JVM是Java虚拟机的简称,是Java程序运行的基础。领域驱动设计是一种软件开发方法,旨在通过将复杂的业务需求建模为领域模型,反映业务逻辑和流程,促进与业务专家的沟通。用镜像,确保每次启动的环境都是一样的……

2025-04-18 21:10:23 360

原创 【Dubbo系列】环境搭建-01

现在(2024年12月1日15点50分)想做一门课程,不知道从什么入手;偶然发现dubbo是自己没有了解过的,那么就从这里开始吧!

2024-12-02 09:30:00 548

原创 【代码之外】潜意识与元认知

潜意识往往不以清晰、逻辑的方式处理信息,而是通过模糊、隐喻和象征的形式呈现。

2024-11-18 20:42:01 433

原创 【代码之外】大脑:一切问题的起源

本能脑:控制动物(包括人)的所以潜意识以及本能,在生物进化史上第一个出现的(爬行动物)。情绪脑:生物的不断进化;在哺乳类动物中出现的,有情绪的变化;时间较长理智脑:人(灵长类)所特有的;时间短

2024-11-10 16:02:11 486

原创 【代码之外】如何走出焦虑的束缚

为什么会读书?信息爆炸的时代,某些东西会不停的刺激你,提高你的阈值,让人们渐渐沉迷其中不可自拔,丧失思考能力。

2024-11-03 20:53:43 533

原创 【SpringBoot】实体多层嵌套如何判空字段?

最近在公司了接了个需求;需要开发一个中间系统;进行三方联调;有接口开发经验的朋友都知道;参数校验是必备的一项操作;怎么优雅的校验却是个问题;我翻找了网络上的一些校验方式;都比较参差不齐;多层嵌套下的判空校验写的也莫名其妙;不是很爽;所以这是写这篇文章的目的。

2024-09-01 14:46:10 683

原创 来看看设计日志组件SDK的基操

来看看设计日志组件SDK的基操;设计一个日志组件来监控业务中的流程节点;我们需要分三步; 打开冰箱门,装入冰箱、关上冰箱们。

2024-08-12 10:46:28 632

原创 【RocketMQ5x-事务消息】实例以及阶段提交方式

RocketMQ的事务消息设计巧妙地融合了两阶段提交协议的核心理念,同时针对消息队列的特性进行了优化,提供了高度一致性的消息处理机制,既保证了数据的可靠性,又兼顾了高性能与高可用性。通过上述代码实例与深入解析,开发者可以更好地理解和应用RocketMQ事务消息机制,以满足复杂分布式系统中对消息一致性的严格要求。

2024-06-10 10:30:47 1161

原创 【简写Mybatis】04-数据源的解析、创建和使用

在学习MyBatis源码文章中,斗胆想将其讲明白;故有此文章,如有问题,不吝指教!

2024-03-18 16:02:21 796

原创 【简写Mybatis】03-Mapper xml的注册和使用

在学习MyBatis源码文章中,斗胆想将其讲明白;故有此文章,如有问题,不吝指教!

2024-03-09 20:49:43 1337

原创 【简写Mybatis】02-注册机的实现以及SqlSession处理

学习源码一定一定不要太关注代码的编写,而是注意代码实现思想:通过设问方式来体现代码中的思想;5W+1H。

2024-02-26 10:20:12 1283

原创 【简写MyBatis】01-简单映射器

学习一下MyBatis的源码,写代码是次要的,主要为了吸收一下其中的思想和手法。 目的 关联对象接口和映射类的问题,把 DAO 接口使用代理类,包装映射操作。 知识点 动态代理

2024-02-16 19:12:16 560

原创 【SpringBootStarter】自定义全局加解密组件

SpringBoot Starter作用将一组相关的依赖打包,简化项目的配置和初始化过程,通过特定的`Starter`开发者可以快速的实现特定功能模块的开发和扩展。

2024-02-09 13:11:52 965

原创 【下云】旧笔记本实现私人服务器

背景:自己是做Java的,做互联网或者说学计算机的都知道,近几年大环境太差,人却越来越多,造成行业越来越卷;针对Java来说,被迫要学习多方面的知识,工作拧螺丝,面试造火箭已经很平常了。在Java方向上不得不学习微服务方向的知识来提升自己的竞争力,其中环境就是第一步。自己涉及的环境:JDK、Mysql、Redis、MQ(RocketMQ\Kafa)、Dubbo、xxl-job、分库分表、gitlab、Jenkins、docker等。为什么会想下云,自己搭建服务器?刚开始接触云服务器的时候,感觉非常的方便,对

2024-01-14 09:46:41 1378

原创 SpringBoot集成easypoi实现execl导出

SpringBoot继承easypoi实现数据导出,解决乱码,打不开等问题

2023-09-23 09:37:31 405

原创 【Nacos篇】Nacos基本操作及配置

nacos的基本操作和配置,包含服务的设置,OpenFeign使用,配置中心的使用,nacos的持久化

2023-08-06 22:06:07 738

原创 SpringBoot环境标识设置及nacos匹配配置

微服务下的环境设置及nacos配置速记

2023-07-30 22:50:40 817

原创 【进阶玩法】策略+责任链+组合实现合同签章

项目中所用的合同签章处理流程,本人基于责任链模式上使用策略模式进行的优化。

2023-07-17 09:04:46 465 2

原创 【面经题解1】快手Java开发-面经解析

八股速记

2023-07-09 18:04:10 320

原创 Gateway服务集成Nacos2021.0.4错误解决

微服务gateway&nacos报错速记

2023-07-08 22:59:00 1795

原创 注解实现:判空赋值

工作中的小玩意~~,1. 注解实现 2. 反射工具类

2023-05-14 10:43:59 286

原创 【源码分析】XXL-JOB的执行器的注册流程

源码分析xxl-job中执行器的注册过程及任务执行流程

2023-04-22 18:00:51 1542

原创 Mybatis应用手册

重学mybatis框架,汇成应用手册,整理mybatis中用法且附相关实例

2023-03-26 15:41:43 404

原创 【Redis场景5】集群秒杀优化-分布式锁

【Redis场景5】集群秒杀优化-分布式锁,基于Redis的分布式锁的实现及锁误删问题的解决方式

2023-03-04 17:33:47 722

原创 【Redis场景3】缓存穿透、击穿问题

【Redis场景3】缓存穿透、击穿问题,涉及缓存穿透、缓存击穿问题的原因分析及解决方案,并进行压测实践;每1~2周学习整理redis中的知识点和场景实现,希望有所输入输出,每天进步一点点。

2023-02-13 09:01:21 348

原创 【Redis场景4】单机环境下秒杀问题

【Redis场景4】单机环境下秒杀问题;涉及到并发问题,库存超卖问题,一人一单秒杀问题等,相关场景进行压测,不局限于文字,注重实操。

2023-02-09 10:42:19 354

原创 【Redis场景拓展】秒杀问题-全局唯一ID生成策略

【Redis场景拓展】秒杀问题-全局唯一ID生成策略,介绍什么是全局唯一ID以及使用的必要性,进行类雪花算法和短码(日期)开发全局唯一ID,并进行生成速度测试。每1~2周学习整理redis中的知识点和场景实现,希望有所输入输出,每天进步一点点。

2023-02-04 15:24:17 592

空空如也

空空如也

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

TA关注的人

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