面试题

stackoverflow,stackoverflow中文版,stackoverflow问题,stackoverflow面试题,Java,Java面试题,Java常见问题,java编程,Java问题精选,Java问题合集。
这里,我把 stackoverflow上的经典问题进行了翻译,希望大家能够喜欢。
stackoverflow经典问题
什么是NullPointerException?该如何修复它?
在Java中,public,protected,package-private和private有什么不同?
在Java中,我们为什么不用 == 而用 .equals() 比较字符串呢?
在Java中,如何把InputSteam转换为String?
消息队列
消息队列有什么优缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ 之间的区别?
如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?
分库分表
为什么要分库分表?高并发系统的数据库层面如何设计?有哪一些分库分表中间件?不同的分库分表中间件的优缺点?如何对数据库进行垂直或水平拆分?
现在有一个未分库分表的系统,未来要分库分表,如何设计才可以让系统从未分库分表动态切换到分库分表上?
搜索引擎
ES 写入数据、ES 查询数据的工作原理是什么?什么是底层 Lucene ?倒排索引了解吗?
ES 生产集群的部署架构是什么?每个索引的数据量大概有多少?每个索引大概有多少个分片?
缓存
如何在项目中使用缓存?缓存如果使用不当会造成什么后果?为什么要使用缓存?
Redis 和 Memcached 有什么区别?Redis 的线程模型是什么?为什么单线程的 Redis 比多线程的 Memcached 效率要高得多?
Redis 的过期策略都有哪些?手写一下 LRU 代码实现?内存淘汰机制都有哪些?
如何保证 Redis 高并发、高可用?Redis 的主从复制原理能介绍一下么?Redis 的哨兵原理能介绍一下么?
Redis 的持久化有哪几种方式?都有什么优缺点?持久化机制具体底层是如何实现的?
说一下Redis 集群模式的工作原理,在集群模式下,Redis 的 key 是如何寻址的?分布式寻址都有哪些算法?你了解一致性 hash 算法吗?如何动态增加和删除一个节点?
什么是 Redis 的雪崩、穿透和击穿?Redis 崩溃之后会怎么样?该如何应对这种情况?如何处理 Redis 的穿透?
Redis 的并发竞争问题是什么?如何解决这个问题?了解 Redis 事务的 CAS 方案吗?
读写分离
如何实现 MySQL 的读写分离?MySQL 主从复制原理是啥?如何解决 MySQL 主从同步的延时问题?
高并发系统
高并发系统
系统拆分
为什么要系统拆分?如何进行系统拆分?系统拆分之后可以不用 Dubbo 吗?
分布式服务框架
说一下 Dubbo 的工作原理,注册中心挂了可以继续通信吗?说一下一次 rpc 请求的流程
Dubbo 支持哪些序列化协议?说一下 Hessian 的数据结构?为什么 PB 的效率是最高的?
Dubbo 负载均衡策略都有哪些?集群容错策略呢?动态代理策略呢?
如何基于 Dubbo 进行服务治理、服务降级、失败重试以及超时重试?
使用 Redis 如何设计分布式锁?使用 Zookeeper 如何设计分布式锁?哪种效率更高?
了解分布式事务?你们如何解决分布式事务问题的?TCC 网络连不通该怎么办?XA 的一致性如何保证?
高可用框架
基于 request cache 请求缓存技术优化批量商品数据查询接口
限流
微服务架构
海量数据处理
未完,待续...