由分库分表引发的问题思考

分表的分片键应该怎么设置

雪花算法是什么?什么使用场景?雪花算法能做到全局递增吗?

冷热数据归档是什么意思?什么时候用?优缺点?

冷热分离是什么意思?一般怎么使用的?

平滑迁移是什么意思?什么时候需要?优缺点?切流?

切流与nginx流量控制?

双写是什么意思?会造成什么问题?有什么好处呢?

历史数据的迁移实是在双写前还是在双写后呢?历史数据的迁移实是在双写前中间产生数据怎么处理呢?先双写在迁移会不会更好?

定时任务是什么?Java每天的定时器吗?定时任务稳定吗?会造成什么问题?哪些场景?

双写考虑到数据的原子性吗?

双读是什么意思?

分布式事务是什么?解决什么问题的?

读写分离,切换读的流量怎么操作?实际应用场景?

灰度是什么意思?怎么使用灰度?

配置中心使用什么技术?Nacos?

业务使用索引比例怎么查看分析呢?比如有abc三个字段需要建立索引,如何根据业务确立索引是abc还是bac?

普通索引和唯一索引什么区别,哪个查询更快?哪个写入更快?

pagecache是什么?

代码里面事务是怎么控制的?什么情况下事务失效?

常用的注解有哪些?什么作用?

事务的四个特性,ACID?

隔离性四种级别?

项目数据库使用的隔离级别是哪种?默认哪种

设置比可重复读更低的隔离级别是为什么?比如设置成RC?RR?

间隙锁?

幻读

那可重复锁的隔离级别能解决幻读问题?

快照读与当前读又是什么意思?

数据库的持久化怎么实现的?应该跟日志有关系、redo log这些

两阶段提交。

数据量太大了有没有考虑做缓存呢?redis?

redis实现MQ?

redis持久化的方式?不可靠?

AOF(记录命令日志),快照

redis实现延迟消息?

1. 写库,定时任务?
2. 正确的应该是直接引入Redisson,直接用delayedQueue就行了, 原理就是使用zset数据结构,把当前时间加上延迟时间作为score得分插入zset集合,然后一直检查是否到了执行时间去处理?
3. key过期触发回调函数

redis能不能不丢失数据?

SpringBoot starter?

怎么写自动化装配?Spring factor是什么?

Java/Idea 或火焰图是什么?

设计模式?

todo