
SQL
文章平均质量分 88
学是为了不学
你学习吗?大家都在学习噢
展开
-
ShardingJDBC的实核心流程和商户商家订单的分片实现
3、批量拆分:当进行批量操作时,比如IN操作,假设两个表根据user_id的奇偶数来分片,执行SQL为select * from user where user_id in (1,2,3,4).如果不进行拆分,就会让这个SQL再两个表中都执行,很显然筛选的数据就多了,性能就差了,虽然对于结果没有影响。由于从数据库中返回的结果集是逐条返回的,并不需要将所有的数据一次性加载至内存中,因此,在进行结果归并时,沿用数据库返回结果集的方式进行归并,能够极大减少内存的消耗,是归并方式的优先选择。原创 2023-04-30 22:02:58 · 660 阅读 · 0 评论 -
如何实现乐观锁
场景:很多情况下我们分布式微服务都需要用到分布式锁!但是第三方分布式锁插件不一定可靠。redisson 是常用的分布式加锁方式!但是难免有redis不可用的情况!这时候需要利用乐观锁。 方法:表字段 加一个版本号,或者别的字段也可以!加版本号,可以知道控制顺序而已!在update 的时候可以where后面加上version= oldVersion。数据库,在任何并发的情况下,update 成功就是 1 失败就是 0 .可以根据返回的 1 ,0 做相应的处理! 使用 MySQL 5.7 做测试,数据库.原创 2020-08-25 23:34:50 · 3381 阅读 · 5 评论