文章 2024-03-14 来自:开发者社区

Java开发面试题 | 2023

Java基础 接口和抽象类的区别?Java动态代理HashMap 底层实现及put元素的具体过程currenthashmap底层实现原理?map可以放null值吗,currenthashmap为什么不能放null值synchronze和reetrantlock区别?怎样停止一个运行中的线程?什么是悲观锁、乐观锁、公平锁、非公平...

文章 2024-01-19 来自:开发者社区

毕业季-Java分布式开发面试题

缓存击穿,穿透,雪崩缓存的目标是提高程序的运行效率。mysql并发量过大,我们可以把数据放入到redis里面来分摊mysql的压力。缓存击穿是指缓存的热点数据到期了,同时并发查询该数据的线程都涌向数据库,导致数据库压力瞬间倍增。这个就是缓存击穿。缓存击穿的应对手段:1.缓存永不过期。2.使用锁(本地锁,分布式锁)。缓存穿透是指数据库被恶意攻击,客户端每次查询的都是mysql中不存在的数据。解决办....

文章 2023-12-25 来自:开发者社区

14道Java开发岗面试题

开头大家好,我是程序员Manor,我希望自己能成为国家复兴道路的铺路人,大数据领域的耕耘者,平凡但不甘于平庸的人。今天为大家带来14道Java开发岗面试题1、问:short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?答:对于short s1 = 1; s1 = s1 + 1;由于s1+1运算时会自动提升表达式的类型,所以结果是int....

文章 2023-10-16 来自:开发者社区

Java高级开发高频面试题(十二)

集群架构设计为了提高Elasticsearch服务的整体可用性,需要合理的部署集群架构。Elasticsearch集群采用主节点、数据节点和协调节点分离的架构,即将主节点和数据节点分开布置,同时引入协调节点,以实现负载均衡。在5.x版本以后,数据节点还可进一步细分为Hot-Warm的架构模式。 主节点和数据节点在Elasticsearch配置文件中,有两个非常重要的参数,分别是node.mas.....

文章 2023-10-16 来自:开发者社区

Java高级开发高频面试题(十一)

磁盘优化Elasticsearch的性能会受到磁盘延迟的影响,因此为了优化磁盘性能,建议使用高速存储设备如SSD或NVMe,并选择合适的RAID级别。尽可能选择固态硬盘(SSD),因为它比任何旋转介质机械硬盘或磁带写入数据时都会有较大的IO提升,特别是在随机写和顺序写方面。同时,应确保系统I/O调度程序的正确配置,以优化写入数据发送到硬盘的时间,这可以提高写入速度。默认*nix发行版下的调度程.....

文章 2023-10-16 来自:开发者社区

Java高级开发高频面试题(十)

Dubbo容错机制容错机制介绍:在分布式系统中,由于网络不稳定、服务提供者宕机等原因,可能会出现服务调用失败的情况。为了提高系统的可靠性,Dubbo提供了多种容错机制。Failover(失败重试):当服务调用失败时,Failover机制会自动重试其他服务提供者。重试次数可配置,默认情况下会重试一次。适用于读操作或幂等性操作。Failfast(快速失败):Failfast机制只调用一次服务提供者.....

文章 2023-10-16 来自:开发者社区

Java高级开发高频面试题(九)

Spring容器启动流程Spring容器的启动流程主要分为以下几个步骤:加载配置文件:Spring容器会从指定的配置文件中读取配置信息,包括bean的定义、依赖关系、AOP切面等。创建容器:Spring容器启动后会创建一个容器实例,容器负责管理bean的生命周期和依赖关系。扫描包并创建bean定义:Spring容器会扫描指定的包路径,自动创建包中标注了@Component、@Service、@.....

Java高级开发高频面试题(九)
文章 2023-10-16 来自:开发者社区

Java高级开发高频面试题(八)

4.深入理解消息中间件解决过各种消息通讯场景的疑难问题,消息中间件(Kafka、RabbitMQ、RocketMQ)出现的消息可靠投递、消息丢失、消息顺序性、消息延迟、过期失效、消息队列满了、消息高可用等问题都有着不错的实战解决方案。有消息中间件调优经验,如CPU、内存、磁盘、网络、操作系统、MQ本身配置优化等。 三种mq对比使用消息队列有解耦,扩展性,削峰,异步等功能,市面上主流的几款mq,.....

Java高级开发高频面试题(八)
文章 2023-10-16 来自:开发者社区

Java高级开发高频面试题(七)

主从架构下的数据同步 主从复制/数据同步master会启动一个后台线程,开始生成一份RDB快照文件,同时还会将从客户端收到的所有写命令缓存在内存中。RDB文件生成完毕之后,master会将这个RDB发送给slave,slave会先写入本地磁盘,然后再从本地磁盘加载到内存中。然后master会将内存中缓存的写命令发送给slave,slave也会同步这些数据。 主从架构下的数据部分复制(断点续传).....

文章 2023-10-16 来自:开发者社区

Java高级开发高频面试题(六)

Redis持久化面试题:Redis 的持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的?save与bgsave?持久化主要是做灾难恢复、数据恢复,高可用。比如你 redis 整个挂了,然后 redis 就不可用了,我们要做的事情就是让 redis 变得可用,尽快变得可用。 重启 redis,尽快让它堆外提供服务,如果没做数据备份,这时候 redis 启动了,也.....

Java高级开发高频面试题(六)

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

Java开发者

Java开发者成长课堂,课程资料学习,实战案例解析,Java工程师必备词汇等你来~

+关注