:::warning 20年毕业,*4年,供应链相关、分布式、微服务、*
介绍下一个核心的业务流程,收发货,核心单据数据量有多少?流水表、5000**万。
有做分库吗?分表怎么分的?shardingjdbc*、发货子单号分表、64*张表,
发货单号:业务类型、时间戳、自增ID-> hash -> **取模。列表查询怎么做?
Shardingjdbc,如果没带分表字段还能查询吗?算法是如何实现的(配置还是实现了算法类)?**
如何实现去指定单表查询?hint**知道吗?
主键是如何实现的?雪花算法。为啥不直接用redis*的自增id?生成的雪花算法多少位?一定19位吗?什么情况下可能会重复?nanoid*用过吗?
为啥只做了分表,没做分库?原因是什么?为啥没考虑用归档解决数据量大的问题?
后期如果64**张表不够了,怎么办?
如何设计一个分库分表方案?选分表键、选中间件,同步方案、切流方案。。。除了insert*,还有update*怎么办?
项目中有哪些难点?springboot**升级,兼容问题。
遇到过哪些线上问题?oom*,excel导出,导出接口限流,poi->easyexcel。。dump*是如何获取的?
导出接口限流是怎么做的?redisson*,ratelimiter*。
OOM排查流程、、除了内存泄漏还有其他原因吗?*Java发生OOM后会立刻挂掉吗?先发生OOM还是先GC?*
Nacos用来做什么?应用如何感知到配置变化的?长轮询??为啥不建长连接?**
Nacos是*AP还是CP?配置中心是哪种?为啥配置中心C比A更重要呢?*
分布式锁的粒度和事务粒度如何控制?平时是如何加事务的?编程式事务。
分布式如何做链路追踪、雪花算法,
分布式锁,乐观锁锁和悲观锁哪个适合高并发?乐观锁无锁吗?
:::
:::color4 有做分库吗?分表怎么分的?shardingjdbc、发货子单号分表、64张表,
发货单号:业务类型、时间戳、自增ID-> hash -> 取模。列表查询怎么做?
为啥只做了分表,没做分库?原因是什么?为啥没考虑用归档解决数据量大的问题?
:::
:::color4 Shardingjdbc,如果没带分表字段还能查询吗?算法是如何实现的(配置还是实现了算法类)?
如何实现去指定单表查询?hint**知道吗?
主键是如何实现的?雪花算法。为啥不直接用redis的自增id?生成的雪花算法多少位?一定19位吗?什么情况下可能会重复?nanoid用过吗?
后期如果64**张表不够了,怎么办?
如何设计一个分库分表方案?选分表键、选中间件,同步方案、切流方案。。。除了insert,还有update怎么办?
:::
:::color4 遇到过哪些线上问题?oom,excel导出,导出接口限流,poi->easyexcel。。dump是如何获取的?
:::
✅基于EasyExcel+线程池解决POI文件导出时的内存溢出及超时问题
:::color4 导出接口限流是怎么做的?redisson,ratelimiter。
:::
:::color4 OOM排查流程、、除了内存泄漏还有其他原因吗?Java发生OOM后会立刻挂掉吗?先发生OOM还是先GC?
:::
:::color4 Nacos用来做什么?应用如何感知到配置变化的?长轮询??为啥不建长连接?**
Nacos是AP还是CP?配置中心是哪种?为啥配置中心C比A更重要呢?
:::
:::color4 分布式锁的粒度和事务粒度如何控制?平时是如何加事务的?编程式事务。
分布式如何做链路追踪、雪花算法,
分布式锁,乐观锁锁和悲观锁哪个适合高并发?乐观锁无锁吗?
:::
✅使用分布式锁时,分布式锁加在事务外面还是里面,有什么区别?