自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 面试官:说说OpenFeign的实现原理?

面试题大全:www.javacn.site大家好,我是磊哥。今天来看一下,OpenFeign的实现原理~一、理解远程调用远程调用怎么理解呢?远程调用和本地调用是相对的,那我们先说本地调用更好理解些,本地调用就是同一个 Service 里面的方法 A 调用方法 B。那远程调用就是不同 Service 之间的方法调用。Service 级的方法调用,就是我们自己构造请求 URL和请求参数,就可以发起远程...

2024-06-16 11:08:28 2

转载 面试官:说说Spring事务传播机制?

面试题大全:www.javacn.siteSpring 事务传播机制是指,包含多个事务的方法在相互调用时,事务是如何在这些方法间传播的。既然是“事务传播”,所以事务的数量应该在两个或两个以上,Spring 事务传播机制的诞生是为了规定多个事务在传播过程中的行为的。比如方法 A 开启了事务,而在执行过程中又调用了开启事务的 B 方法,那么 B 方法的事务是应该加入到 A 事务当中呢?还是两个事务相互...

2024-06-15 11:32:05 3

原创 字节面试:MySQL自增ID用完会怎样?

面试题大全:www.javacn.site在一些中小型项目开发中,我们通常会使用自增 ID 来作为主键的生成策略,但随着时间的推移,数据库的信息也会越来越多,尤其是使用自增 ID 作为日志表的主键生成策略时,可能很快就会遇到 ID 被用完的情况,那么如果发生了这种情况,MySQL 又会怎样执行呢?“PS:当然,在分库分表的场景中,我们通常会使用雪花算法来替代自增 ID,但中小型项目开发中,使用自增...

2024-06-14 08:30:15 753

原创 面试官:谈谈对SpringAI的理解?

面试题大全:www.javacn.siteSpring AI 已经发布了好长时间了,目前已经更新到 1.0 版本了,所以身为 Java 程序员的你,如果还对 Spring AI 一点都不了解的话,那就有点太落伍了。言归正传,那什么是 Spring AI?如何快速进行 Spring AI 开发呢?1.什么是Spring AI?Spring AI 是 Spring 官方社区项目,旨在简化 Java A...

2024-06-13 08:00:12 847

原创 网易面试:SpringBoot如何开启虚拟线程?

面试题大全:www.javacn.site虚拟线程(Virtual Thread)也称协程或纤程,是一种轻量级的线程实现,与传统的线程以及操作系统级别的线程(也称为平台线程)相比,它的创建开销更小、资源利用率更高,是 Java 并发编程领域的一项重要创新。“PS:虚拟线程正式发布于 Java 长期支持版(Long Term Suort,LTS)Java 21(也就是 JDK 21)。虚拟线程是一种...

2024-06-12 08:08:30 372

原创 百度面试:如何用Redis实现限流?

面试题大全:www.javacn.site高并发系统有三大特征:限流、缓存和熔断,所以限流已经成为当下系统开发中必备的功能了。那么,什么是限流?如何实现限流?使用 Redis 能不能实现限流?接下来我们一起来看。1.什么是限流?“限流是指在各种应用场景中,通过技术和策略手段对数据流量、请求频率或资源消耗进行有计划的限制,以避免系统负载过高、性能下降甚至崩溃的情况发生。限流的目标在于维护系统的稳定性...

2024-06-11 10:01:57 1127

原创 腾讯音乐:什么锁比读写锁性能更高?

面试题大全:www.javacn.site在并发编程中,读写锁 ReentrantReadWriteLock 的性能已经算是比较高的了,因为它将悲观锁的粒度分的更细,在它里面有读锁和写锁,当所有操作为读操作时,并发线程是可以共享读锁同时运行的,这样就无需排队执行了,所以执行效率也就更高。那么问题来了,有没有比读写锁 ReentrantReadWriteLock 性能更高的锁呢?答案是有的,在 Ja...

2024-06-10 15:29:36 697

原创 美团面试:说说Netty的零拷贝技术?

面试题大全:www.javacn.site零拷贝技术(Zero-Copy)是一个大家耳熟能详的技术名词了,它主要用于提升 IO(Input & Output)的传输性能。那么问题来了,为什么零拷贝技术能提升 IO 性能?1.零拷贝技术和性能在传统的 IO 操作中,当我们需要读取并传输数据时,我们需要在用户态(用户空间)和内核态(内核空间)中进行数据拷贝,它的执行流程如下:从上述流程我们可以...

2024-06-07 08:08:52 531

原创 高德面试:为什么Map不能插入null?

面试题大全:www.javacn.site在 Java 中,Map 是属于 java.util 包下的一个接口(interface),所以说“为什么 Map 不能插入 null?”这个问题本身问的不严谨。Map 部分类关系图如下:所以,这里面试官其实想问的是:为什么 ConcurrentHashMap 不能插入 null?1.HashMap和ConcurrentHashMap的区别HashMap ...

2024-06-06 08:08:52 699

原创 面试官:说说延迟任务的时间轮调度算法?

面试题大全:www.javacn.site本文继续讨论 Netty 相关的面试题,今天咱们来看一道 Netty 中的高频面试题:说说 Netty 延迟任务的时间轮调度算法?Netty 框架是以性能著称的框架,因此在它的框架中使用了大量提升性能的机制,例如 Netty 用于实现延迟队列的时间轮调度算法就是一个典型的例子。使用时间轮算法可以实现海量任务新增和取消任务的时间度为 O(1),那么什么是时间...

2024-06-05 08:08:49 580

原创 面试官:说说Netty对象池的实现原理?

面试题大全:www.javacn.siteNetty 作为一个高性能的网络通讯框架,它内置了很多恰夺天工的设计,目的都是为了将网络通讯的性能做到极致,其中「对象池技术」也是实现这一目标的重要技术。1.什么是对象池技术?对象池技术是一种重用对象以减少对象创建和销毁带来的开销的方法。在对象池中,只有第一次访问时会创建对象,并将其维护在内存中,当再次需要使用对象时,会直接从对象池中获取对象,并在使用完毕...

2024-06-04 09:00:31 677

原创 拼多多面试:Netty如何解决粘包问题?

面试题大全:www.javacn.site粘包和拆包问题也叫做粘包和半包问题,它是指在数据传输时,接收方未能正常读取到一条完整数据的情况(只读取了部分数据,或多读取到了另一条数据的情况)就叫做粘包或拆包问题。从严格意义上来说,粘包问题和拆包问题属于两个不同的问题,接下来我们分别来看。1.粘包问题粘包问题是指在网络通信中,发送方连续发送的多个小数据包被接收方一次性接收的现象。这可能是因为底层传输层协...

2024-06-03 08:08:49 758

原创 得物面试:创建索引时会不会锁表?

本文内容已收录至我的面试网站:www.javacn.site索引主要是用于提高数据检索速度的一种机制,通过索引数据库可以快速定位到目标数据的位置,而不需要遍历整个数据集,它就像书籍的目录部分,有它的存在,可以大大加速查询的效率。那么问题来了:在创建索引时一定会锁表吗?如果你看的是网上的一些资料,或者是通过 chatgpt,那么很可能得到的结果是这样的“是的,创建索引时是会锁表的。”,但这个回答是不...

2024-06-02 15:11:28 1126

原创 腾讯面试:如何实现10亿数据判重?

本文内容已收录至我的面试网站:www.javacn.site当数据量比较大时,使用常规的方式来判重就不行了。例如,使用 MySQL 数据库判重,或使用 List.contains() 或 Set.contains() 判重就不可行,因为 MySQL 在数据量大时查询就会非常慢,而数据库又是及其珍贵的全局数据库资源。《阿里巴巴Java开发手册》上也说了,如果单表数据量超过 500 万或 2GB 时就...

2024-06-01 11:53:04 1001

原创 滴滴面试:谈谈对Netty线程模型的理解?

面试题大全:www.javacn.siteNetty 线程模型是指 Netty 框架为了提供高性能、高并发的网络通信,而设计的管理和利用线程的策略和机制。Netty 线程模型被称为 Reactor(响应式)模型/模式,它是基于 NIO 多路复用模型的一种升级,它的核心思想是将 IO 事件和业务处理进行分离,使用一个或多个线程来执行任务的一种机制。1.Reactor三大组件Reactor 包含以下三...

2024-05-31 08:08:19 921

原创 面试官:说说Netty核心组件?

面试题大全:www.javacn.siteNetty 核心组件是指 Netty 在执行过程中所涉及到的重要概念,这些核心组件共同组成了 Netty 框架,使 Netty 框架能够正常的运行。Netty 核心组件包含以下内容:启动器 Bootstrap/ServerBootstrap事件循环器 EventLoopGroup/EventLoop通道 Channel通道处理器 ChannelHandle...

2024-05-30 08:03:18 661

转载 面试官:说说读写锁的底层实现?

大家好,我是磊哥,今天是一篇硬核文,请各位读者大大们系好安全带,马上要发车了。晕车的朋友,可以先吃一颗阿星独家秘制的晕车药,童叟无欺,货真价实。本文大纲如下纵观全局我的英文名叫ReentrantReadWriteLock(后面简称RRW),大家喜欢叫我读写锁,因为我常年混迹在读多写少的场景。读写锁规范作为合格的读写锁,先要有读锁与写锁才行。所以声明了ReadWriteLock接口,作为读写锁的基本...

2024-05-29 08:03:32 9

原创 京东二面:为什么Netty要创造FastThreadLocal?

面试题大全:www.javacn.siteFastThreadLocal 从字面意义上来看,它是“Fast”+“ThreadLocal”的结合体,寓意为快速的 ThreadLocal。那么,问题来了,Netty 为什么要再造一个 FastThreadLocal?FastThreadLocal 运行快的原因是啥?除了快之外,它还有其他优势吗?1.先从ThreadLocal说起ThreadLocal ...

2024-05-28 08:08:28 861

原创 如何快速拿到Offer?

哈喽,大家好,我是磊哥!在过去的一段时间里,想必大家也感受到了找工作的难度,尤其是找好工作的难度。当然,这也是时代发展的趋势,但同时也对 Java 从业人员提出了更高的技术要求。哪怎么才能在短时间内提升自己的技术能力和面试能力?已得到更好的工作呢?这就是「面试突击训练营」所要解决的问题了。什么是面试突击训练营?面试突击训练营是短期内,帮助学员找到满意工作的一门课程和一系列就业辅导服务。也就是面试突...

2024-05-28 08:08:28 407

原创 阿里面试:NIO为什么会导致CPU100%?

面试题大全:www.javacn.site在 Java 中总共有三种 IO 类型:BIO(Blocking I/O,阻塞I/O)、NIO(Non-blocking I/O,非阻塞I/O)和 AIO(Asynchronous I/O,异步I/O),它们的区别如下:在 JDK 1.4 之前,只有 BIO 一种模式,其开发过程相对简单,新来一个连接就会创建一个新的线程处理,但随着请求并发度的提升,BIO...

2024-05-27 08:03:18 565

原创 京东面试:SpringBoot同时可以处理多少请求?

面试题大全:www.javacn.siteSpring Boot 作为 Java 开发中必备的框架,它为开发者提供了高效且易用的开发工具,所以和它相关的面试题自然也很重要,咱们今天就来看这道经典的面试题:Spring Boot 同时可以处理多少个请求 ?准确的来说,Spring Boot 同时可以处理多少个请求,并不取决于 Spring Boot 框架本身,而是取决于其内置的 Web 容器(因为 ...

2024-05-24 10:30:08 423

原创 腾讯面试:如何提升Kafka吞吐量?

面试题大全:www.javacn.siteKafka 是一个分布式流处理平台和消息系统,用于构建实时数据管道和流应用。它最初由 LinkedIn 开发,后来成为 Apache 软件基金会的顶级项目。Kafka 特点是高吞吐量、分布式架构、支持持久化、集群水平扩展和消费组消息消费,具体来说:高吞吐量:Kafka 具有高性能和低延迟的特性,能够处理大规模数据,并支持每秒数百万条消息的高吞吐量。分布式架...

2024-05-23 16:36:32 488

原创 阿里面试:说说自适应限流?

面试题大全:www.javacn.site限流想必大家都不陌生,它是一种控制资源访问速率的策略,用于保护系统免受过载和崩溃的风险。限流可以控制某个服务、接口或系统在一段时间内能够处理的请求或数据量,以防止系统资源耗尽、性能下降或服务不可用。常见的限流策略有以下几种:令牌桶算法:基于令牌桶的方式,限制每个单位时间内允许通过的请求量,请求量超出限制的将被拒绝或等待。漏桶算法:基于漏桶的方式,限制系统处...

2024-05-22 09:30:30 878

原创 京东面试:如何进行JVM调优?

面试题大全:www.javacn.siteJVM 调优是一个很大的话题,在回答“如何进行 JVM 调优?”之前,首先我们要回答一个更为关键的问题,那就是,我们为什么要进行 JVM 调优?只有知道了为什么要进行 JVM 调优之后,你才能准确的回答出来如何进行 JVM 调优?要进行 JVM 调优无非就是以下两种情况:目标驱动型的 JVM 调优,如,我们是为了最短的停顿时间所以要进行 JVM 调优,或者...

2024-05-21 09:06:54 769

原创 小米面试:如何实现优先级线程池?

面试题大全:www.javacn.site我们知道,线程池中的所有线程都是由统一的线程工厂来创建的,当我们指定线程工厂时,线程池中的所有线程会使用我们指定的线程工厂来创建线程;但如果没有指定线程工厂,则会使用默认的线程工厂 DefaultThreadFactory 来创建线程,核心源码如下:DefaultThreadFactory(){@SuppressWarnings("remova...

2024-05-20 10:01:34 525

原创 虾皮面试:微服务如何灰度发布?

面试题大全:www.javacn.site微服务中的灰度发布(又称为金丝雀发布)是一种持续部署策略,它允许在正式环境的小部分用户群体上先部署新版本的应用程序或服务,而不是一次性对所有用户同时发布全新的版本。这种方式有助于在生产环境中逐步验证新版本的稳定性和兼容性,同时最小化潜在风险,不影响大部分用户的正常使用。1.灰度发布关键步骤在 Spring Cloud 微服务架构中,实现灰度发布通常涉及到以...

2024-05-17 15:46:52 989

原创 如何快速找到好工作?

哈喽,大家好,我是磊哥!在过去的一段时间里,想必大家也感受到了找工作的难度,尤其是找好工作的难度。当然,这也是时代发展的趋势,但同时也对 Java 从业人员提出了更高的技术要求。哪怎么才能在短时间内提升自己的技术能力和面试能力?已得到更好的工作呢?这就是「面试突击训练营」所要解决的问题了。什么是面试突击训练营?面试突击训练营是短期内,帮助学员找到满意工作的一门课程和一系列就业辅导服务。也就是面试突...

2024-05-16 17:55:56 909

原创 美团面试:如何实现线程任务编排?

面试题大全:www.javacn.site线程任务编排指的是对多个线程任务按照一定的逻辑顺序或条件进行组织和安排,以实现协同工作、顺序执行或并行执行的一种机制。1.线程任务编排 VS 线程通讯有同学可能会想:那线程的任务编排是不是问的就是线程间通讯啊?线程间通讯我知道了,它的实现方式总共有以下几种方式:Object 类下的 wait()、notify() 和 notifyAll() 方法;Cond...

2024-05-16 17:55:56 727

原创 腾讯面试:什么锁比读写锁性能更高?

面试题大全:www.javacn.site在并发编程中,读写锁 ReentrantReadWriteLock 的性能已经算是比较高的了,因为它将悲观锁的粒度分的更细,在它里面有读锁和写锁,当所有操作为读操作时,并发线程是可以共享读锁同时运行的,这样就无需排队执行了,所以执行效率也就更高。那么问题来了,有没有比读写锁 ReentrantReadWriteLock 性能更高的锁呢?答案是有的,在 Ja...

2024-05-15 09:33:00 771

原创 经验分享:春招零Offer,5月份还有机会吗?

面试题大全:www.javacn.site先说答案:5 月份依然有拿到 Offer 的机会。5月份春招结束了吗?对于应届大学生来说(也就是今年暑假毕业的学生),5 月中旬春招就陆续结束了,但是 5 月份会有很多补录的机会。对于非应届的大学生来说(今年之后毕业的学生)来说,5 月和 6 月正是在暑假最好的时机,尤其是 6 月份会有大量的暑假实习岗的招聘需求。对于社招的同学来说,5 月份之后岗位招聘的...

2024-05-14 17:10:39 840

原创 快速找到好工作?面试训练营

哈喽,大家好,我是磊哥!在过去的一段时间里,想必大家也感受到了找工作的难度,尤其是找好工作的难度。当然,这也是时代发展的趋势,但同时也对 Java 从业人员提出了更高的技术要求。哪怎么才能在短时间内提升自己的技术能力和面试能力?已得到更好的工作呢?这就是「面试突击训练营」所要解决的问题了。什么是面试突击训练营?面试突击训练营是短期内,帮助学员找到满意工作的一门课程和一系列就业辅导服务。也就是面试突...

2024-05-14 17:10:39 313

原创 轻松找工作,面试训练营!

哈喽,大家好,我是磊哥!在过去的一段时间里,想必大家也感受到了找工作的难度,尤其是找好工作的难度。当然,这也是时代发展的趋势,但同时也对 Java 从业人员提出了更高的技术要求。哪怎么才能在短时间内提升自己的技术能力和面试能力?已得到更好的工作呢?这就是「面试突击训练营」所要解决的问题了。什么是面试突击训练营?面试突击训练营是短期内,帮助学员找到满意工作的一门课程和一系列就业辅导服务。也就是面试突...

2024-05-13 17:02:55 407

原创 字节面试:说说Java中的锁机制?

面试题大全:www.javacn.siteJava 中的锁(Locking)机制主要是为了解决多线程环境下,对共享资源并发访问时的同步和互斥控制,以确保共享资源的安全访问。锁的作用主要体现在以下几个方面:互斥访问:确保在任何时刻,只有一个线程能够访问特定的资源或执行特定的代码段。这防止了多个线程同时修改同一资源导致的数据不一致问题。内存可见性:通过锁的获取和释放,可以确保在锁保护的代码块中对共享变...

2024-05-13 17:02:55 403

原创 如何快速找到Java工作?

哈喽,大家好,我是磊哥!在过去的一段时间里,想必大家也感受到了找工作的难度,尤其是找好工作的难度。当然,这也是时代发展的趋势,但同时也对 Java 从业人员提出了更高的技术要求。哪怎么才能在短时间内提升自己的技术能力和面试能力?已得到更好的工作呢?这就是「面试突击训练营」所要解决的问题了。什么是面试突击训练营?面试突击训练营是短期内,帮助学员找到满意工作的一门课程和一系列就业辅导服务。也就是面试突...

2024-05-07 15:09:46 874

原创 美团面试官:核心线程数为0时,线程池如何执行?

面试题大全:www.javacn.site线程池是 Java 中用于提升程序执行效率的主要手段,也是并发编程中的核心实现技术,并且它也被广泛的应用在日常项目的开发之中。那问题来了,如果把线程池中的核心线程数设置为 0 时,线程池是如何执行的?要回答这个问题,我们首先要了解在正常情况下,线程池的执行流程,也就是说当有一个任务来了之后,线程池是如何运行的?1.线程池的执行流程正常情况下(核心线程数不为...

2024-05-07 15:09:46 511

原创 Java面试突击训练营,又升级了!

哈喽,大家好,我是磊哥!在过去的一段时间里,想必大家也感受到了找工作的难度,尤其是找好工作的难度。当然,这也是时代发展的趋势,但同时也对 Java 从业人员提出了更高的技术要求。哪怎么才能在短时间内提升自己的技术能力和面试能力?已得到更好的工作呢?这就是「面试突击训练营」所要解决的问题了。什么是面试突击训练营?面试突击训练营是短期内,帮助学员找到满意工作的一门课程和一系列就业辅导服务。也就是面试突...

2024-05-05 15:49:41 294

原创 阿里面试:RabbitMQ如何实现延迟队列?

面试题大全:www.javacn.site延迟队列是指当消息被发送以后,并不是立即执行,而是等待特定的时间后,消费者才会执行该消息。延迟队列的使用场景有以下几种:未按时支付的订单,30 分钟过期之后取消订单。给活跃度比较低的用户间隔 N 天之后推送消息,提高活跃度。新注册会员的用户,等待几分钟之后发送欢迎邮件等。1.如何实现延迟队列?延迟队列有以下两种实现方式:通过消息过期后进入死信交换器,再由交...

2024-04-28 08:50:34 213

转载 微众银行一面,细节拉满!!

面试题大全:www.javacn.site昨天有一位同学分享了微众银行一面的题目,八股就问了 11 道,相比较我之前分享的农行面经,可以说细节拉满。微众银行是由腾讯带头成立的民营企业,主要业务有微粒贷、微众银行、微车贷等等,对银行业务感兴趣的同学可以投一投。内容较长,建议正在冲刺 24 届春招和 25 届暑期实习、秋招的同学先收藏起来,面试的时候大概率会碰到,我会尽量用通俗易懂+手绘图的方式,让天...

2024-04-26 15:40:44 21

原创 Sentinel如何持久化数据到Nacos?

面试题大全:www.javacn.site默认情况下 Sentinel 只能接收到 Nacos 推送的消息,但不能将自己控制台修改的信息同步给 Nacos,如下图所示:但是在生成环境下,我们为了更方便的操作,是需要将 Sentinel 控制台修改的规则也同步到 Nacos 的,所以在这种情况下我们就需要修改 Sentinel 的源码,让其可以实现和 Nacos 的双向通讯,如下图所示:改造之后的交...

2024-04-25 16:15:12 599

原创 美团社招一面,比预想的简单。

面试题大全:www.javacn.site面试这件事就很玄学,有时候你觉得他可能很难,但面完之后竟然出奇的顺利,问的问题你都会;有些你觉得这次面试应该很简单,但去了之后就被问懵了,所以面试这件事有很多一部分运气的成分。所以说,在没有 Offer 之前就是多准备、楞怂面,主打一个大力出奇迹。这不,逛牛某时,看到这套题就很气,感慨这位老兄命怎么这么好?1.线程池有几种实现方式?线程池的创建方法总共有 ...

2024-04-24 09:00:41 890

空空如也

空空如也

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

TA关注的人

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