最新文章
-
Kafka 可以脱离 Zookeeper 单独使用吗,为什么
参考答案 Kafka 不能脱离 Zookeeper 单独使用,因为 Kafka 使用 Zookeeper 管理和协调 Kafka 的节点服务器。 Zookeeper 是一个分布式的协调组件,早期版本的 Kafka 用Zookeeper 做meta信息存储,consumer的消费状态,group的管理以及 offset的值。 考虑到 Zookeeper 本身的一些因素,以及整个架构较大概率存在单点问…... -
如何停止一个线程池
参考答案 Java 并发工具包中 java.util.concurrent.ExecutorService 接口定义了线程池任务提交、获取线程池状态、线程池停止的方法等。 JDK 1.8 中,线程池的停止一般使用以下方法 shutdown() shutdownNow() shutdown() + awaitTermination(long timeout, TimeUnit unit) 1. 详…... -
什么是Redis持久化、Redis持久化机制,以及各自的优缺点
参考答案 一、Redis持久化 持久化就是把内存的数据写到磁盘中去,防止服务宕机了内存数据丢失。 二、Redis 的持久化机制、以及其优缺点 Redis 提供两种持久化机制: RDB(默认) 和 AOF 机制。 1. RDB:是Redis DataBase缩写快照 RDB是Redis默认的持久化方式。按照一定的时间将内存的数据以快照的形式保存到硬盘中,对应产生的数据文件为dump.rdb。通过配…... -
Dubbo 和 Spring Cloud 的区别
参考答案 定位:Dubbo 专注 RPC 和服务治理;Spirng Cloud 是一个微服务架构生态。 性能:Dubbo 强于 SpringCloud(主要是通信协议的影响)。 功能范围:Dubbo 诞生于面向服务架构时代,是一个分布式、高性能、透明化的 RPC 服务框架,提供服务自动注册、自动发现等高效服务治理方案;Spring Cloud 诞生于微服务架构时代,基于 Spring、Spring…... -
如何实现 MyBatis 与 Spring 的集成
参考答案 MyBatis 创建了 MyBatis-Spring 项目与 Spring 进行无缝整合,让 MyBatis 参与到 Spring 的事务管理之中,创建映射器 mapper 和 SqlSession 并注入到 Spring 的 bean 中。 核心配置就是 dataSource、SqlSessionFactoryBean、MapperScannerConfigurer。 1. data…... -
CAS的底层原理是什么
参考答案 1. CAS(compareAndSwap)的概念 前往查看:什么是CAS 2. CAS的优点、缺点 前往查看:CAS有什么优点、缺点 3. CAS的底层原理 CAS的实现主要在JUC中的atomic包,我们以AtomicInteger类为例: 通过代码追溯,可见: Java中的CAS操作,都是通过sun包下Unsafe类实现。 而Unsafe类中的方法都是native方法,由JV…...