如标题所说,本文会结合我自己的亲身经历,介绍 3 部分内容:   线上单库单表变更到多库多表的各个实现方案 方案优劣对比 对于历史存在的单表,并且它们不需要变成多表,需要怎么处理 先下个结论,没有百分百完美的方案,技术方案永远要结合产品业务来设计。   以下举例的方案也只是较为通用的做法,具体细节是可以根据业务场景进行变化调整的。   只要能够满足业务需求,就是好方案,不要为了秀技术而忽略业务。   看完这篇文章,如果后面有人问你,关于变更到多库多表的方案问题,那你可以和他谈笑风生了。   好了,下面我说下我这边的…

2022年5月8日 0条评论 20点热度 2人点赞 zdc1228@163.com 阅读全文

前言 本文将跟大家聊聊InnoDB的锁。本文比较长,包括一条SQL是如何加锁的,一些加锁规则、如何分析和解决死锁问题等内容,建议耐心读完,肯定对大家有帮助的。 为什么需要加锁呢? InnoDB的七种锁介绍 一条SQL是如何加锁的 RR隔离级别下的加锁规则 如何查看事务加锁情况 死锁案例分析 1. 为什么需要加锁? 数据库为什么需要加锁呢? 在日常生活中,如果你心情不好。想要一个人静静,不想被比别人打扰,你就可以把自己关进房间里,并且反锁。 同理,对于MySQL数据库来说的话,一般的对象都是一个事务一个事务来说的。所…

2022年5月8日 0条评论 17点热度 0人点赞 zdc1228@163.com 阅读全文

并发编程是一项非常重要的技术,无论在面试,还是工作中出现的频率非常高。 之前我发表的一篇《聊聊并发编程的10个坑》,在全网广受好评。说明了这类文章还是比较有价值的,接下来,打算继续聊聊并发编程这个话题。 并发编程说白了就是多线程编程,但多线程一定比单线程效率更高? 答:不一定,要看具体业务场景。 毕竟如果使用了多线程,那么线程之间的竞争和抢占cpu资源,线程的上下文切换,也是相对来说比较耗时的操作。   下面这几个问题在面试中,你必定遇到过: 你在哪来业务场景中使用过多线程? 怎么用的? 踩过哪些坑? 今…

2022年5月8日 0条评论 7点热度 0人点赞 zdc1228@163.com 阅读全文

阿里云服务器优惠券免费领取:aliyun.dechenyun.com 世上浏览器千千万,唯 Chrome 独领风骚,Chrome 浏览器的另一个亮点就是它拥有强大的扩展插件,很多好用的功能都可以通过插件来使用,今天就给大家分享几个阿粉常用的 Chrome 浏览器插件,包含编程和阅读相关,如果你有更好用的浏览器插件,欢迎在评论区留言,让更多人使用起来。 编程相关 JSON-handle 不管是不是 Java 程序员,日常工作中必不可少的会接触到 JSON 的使用,当我们做前后端对接的使用,很多时候的入参和出参都是 J…

2022年5月8日 0条评论 22点热度 0人点赞 zdc1228@163.com 阅读全文

转自:https://blog.csdn.net/qq_40521656/article/details/90749927 之前有一个同事突然我问了我一个问题,说在foreach当中能不能删除list里面的元素,我当时大概说了一下是否能删除,以及原因;接下来我们来探讨一下是否能够如此; (1)遍历元素 首先,我们一一段代码为例: String[] array = {"1", "2", "3"}; for (String i : array) { System.out.println(i); } ArrayList …

2022年4月20日 0条评论 71点热度 0人点赞 zdc1228@163.com 阅读全文

来源:blog.csdn.net/weixin_67276852?type=blog 本文参考了 IntelliJ IDEA 的官网,列举了IntelliJ IDEA(Windows 版)的所有快捷键。并在此基础上,为 90% 以上的快捷键提供了动图演示,能够直观的看到操作效果。 该快捷键共分 16 种,可以方便的按各类查找自己需要的快捷键~~ 一、构建/编译 Ctrl + F9:构建项目 该快捷键,等同于菜单【Build】—>【Build Project】 执行该命令后,IntelliJ IDEA 会编译项…

2022年4月20日 0条评论 74点热度 0人点赞 zdc1228@163.com 阅读全文