排序
面试题:了解 Seata 的实现原理吗?
是的,Seata 是一款开源的分布式事务解决方案,支持多种事务模式,包括 AT(自动补偿型)、TCC(Try-Confirm-Cancel)、Saga 和 XA。它的核心目标是解决分布式系统中的数据一致...
面试题:什么是 RabbitMQ 中的虚拟主机(vhost)?有什么作用?
在 RabbitMQ 中,虚拟主机(Virtual Host,简称 vhost)是一个重要的概念,它提供了在同一物理 RabbitMQ 服务器或集群上进行逻辑分区的能力。每个 vhost 可以被视为一个独立的 RabbitMQ 实例,...
面试题:在 RocketMQ 中,什么是事务消息?如何实现分布式事务?
一、事务消息基本概念 事务消息是 RocketMQ 提供的一种特殊消息类型,用于解决分布式系统中的事务一致性问题。它通过'半消息'机制实现分布式事务的最终一致性。 核心特点: 两阶段提交:准备阶...
面试题:简述 jstack 命令以及如何分析 Java 执行性能 ?
1. jstack 命令简介 jstack 是 JDK 自带的一个命令行工具,用于生成 Java 进程的线程快照(Thread Dump)。它可以帮助开发者分析 Java 应用程序的线程状态,定位死锁、线程阻塞...
面试题:Java 中 == 和 equals 的区别是什么?
== 和 equals 是 Java 中用于比较两个对象的两种方式,但它们的作用和行为有显著区别。 1. == 运算符 作用: == 是一个运算符,用于比较两个对象的引用(内存地址)...
面试题:简述如果使用Object作为HashMap的Key,应该怎么办呢 ?
在Java中,HashMap是基于哈希表实现的,它要求键(Key)必须是唯一的,并且能够正确地计算哈希值。如果使用Object作为HashMap的键,需要注意以下几点: 重写equals()方法: HashMap在查找键时,...
面试题:Java 中的 HashSet,内部是如何工作的?
HashSet 是 Java 集合框架中的一个类,它实现了 Set 接口,用于存储不重复的元素。HashSet 的内部实现基于 HashMap,以下是它的工作原理: 基于 HashMap 实现:HashSe...
面试题:你使用过 Java 中的哪些原子类?
Java 中的 原子类(Atomic Classes) 是 java.util.concurrent.atomic 包中提供的一组线程安全的类,用于在多线程环境下实现无锁的原子操作。这些类通过 CAS(Compare-And-...
面试题:G1 相对于 CMS 有哪些进步的地方?
G1(Garbage-First)垃圾收集器相较于 CMS(Concurrent Mark-Sweep)垃圾收集器,在多个方面都有显著的进步。以下是 G1 相对于 CMS 的主要改进点: 分区模型: G1 将堆内存划分为多个大小相等的...
面试题:Java 并发库中提供了哪些线程池实现?它们有什么区别?
Java 并发库(java.util.concurrent)提供了多种线程池实现,主要通过 Executors 工具类来创建。这些线程池实现各有特点,适用于不同的场景。以下是常见的线程池实现及其区别: 1.&nb...