2023面试笔记

  1. 说一下对@SpringBootApplication这个注解的了解。

  2. 高并发下如何保证接口的幂等性(表单重复提交)。
    2.1 先select再(insert或update)
    根据唯一字段数据判断是否已存在表单数据,存在用update,反之则用insert(这种方案不适合高并发场景)。

2.2 悲观锁
使用以下锁单行数据
select * from user id=123 for update

2.3 乐观锁
表中添加一个version字段,用于记录数据的版本信息,更新数据时使用加一操作
update user set amount=amount+100,version=version+1 where id=123 and version=1

2.4 加唯一索引
加了唯一索引之后,重复插入数据会报异常,捕获异常直接返回成功即可

2.5 加分布式锁
redis setnx

  1. 分布式事务一致性。

参考文献:
https://segmentfault.com/a/1190000039737646

posted @ 2023-02-01 21:45  呱呱二号  阅读(14)  评论(0编辑  收藏  举报