diff --git a/2014/12/23/my-new-post/index.html b/2014/12/23/my-new-post/index.html index e0d8d16305..923a70f54d 100644 --- a/2014/12/23/my-new-post/index.html +++ b/2014/12/23/my-new-post/index.html @@ -422,7 +422,7 @@
- 101 + 102 posts
@@ -435,7 +435,7 @@
- 201 + 205 tags
@@ -460,7 +460,7 @@
- +
diff --git a/2014/12/24/MFC 模态对话框/index.html b/2014/12/24/MFC 模态对话框/index.html index 822108dfac..49ea26854b 100644 --- a/2014/12/24/MFC 模态对话框/index.html +++ b/2014/12/24/MFC 模态对话框/index.html @@ -451,7 +451,7 @@
- 101 + 102 posts
@@ -464,7 +464,7 @@
- 201 + 205 tags
@@ -489,7 +489,7 @@
- +
diff --git a/2014/12/30/Clone-Graph-Part-I/index.html b/2014/12/30/Clone-Graph-Part-I/index.html index 68cb9d5e4d..d457134cdc 100644 --- a/2014/12/30/Clone-Graph-Part-I/index.html +++ b/2014/12/30/Clone-Graph-Part-I/index.html @@ -330,7 +330,7 @@ Node *clone(Node *graph) { @@ -463,7 +463,7 @@ @@ -476,7 +476,7 @@ @@ -501,7 +501,7 @@
- +
diff --git a/2021/03/07/《垃圾回收算法手册读书》笔记之整理算法/index.html b/2021/03/07/《垃圾回收算法手册读书》笔记之整理算法/index.html index 2c6d83f33f..b9339d3855 100644 --- a/2021/03/07/《垃圾回收算法手册读书》笔记之整理算法/index.html +++ b/2021/03/07/《垃圾回收算法手册读书》笔记之整理算法/index.html @@ -309,10 +309,10 @@ @@ -466,7 +466,7 @@ @@ -479,7 +479,7 @@ @@ -504,7 +504,7 @@
- +
diff --git a/2021/03/14/Leetcode-121-买卖股票的最佳时机-Best-Time-to-Buy-and-Sell-Stock-题解分析/index.html b/2021/03/14/Leetcode-121-买卖股票的最佳时机-Best-Time-to-Buy-and-Sell-Stock-题解分析/index.html index 1bca9682e9..b30ce9179d 100644 --- a/2021/03/14/Leetcode-121-买卖股票的最佳时机-Best-Time-to-Buy-and-Sell-Stock-题解分析/index.html +++ b/2021/03/14/Leetcode-121-买卖股票的最佳时机-Best-Time-to-Buy-and-Sell-Stock-题解分析/index.html @@ -337,9 +337,6 @@
@@ -494,7 +494,7 @@ @@ -507,7 +507,7 @@ @@ -532,7 +532,7 @@
- +
diff --git a/2021/03/21/关于公共交通再吐个槽/index.html b/2021/03/21/关于公共交通再吐个槽/index.html index a53e092b8c..5c02d37fdc 100644 --- a/2021/03/21/关于公共交通再吐个槽/index.html +++ b/2021/03/21/关于公共交通再吐个槽/index.html @@ -314,7 +314,7 @@ @@ -463,7 +463,7 @@ @@ -476,7 +476,7 @@ @@ -501,7 +501,7 @@
- +
diff --git a/2021/03/28/聊聊-Linux-下的-top-命令/index.html b/2021/03/28/聊聊-Linux-下的-top-命令/index.html index 954d5a54ba..c6defe2784 100644 --- a/2021/03/28/聊聊-Linux-下的-top-命令/index.html +++ b/2021/03/28/聊聊-Linux-下的-top-命令/index.html @@ -249,11 +249,11 @@ , - + , - + , @@ -498,7 +498,7 @@ @@ -511,7 +511,7 @@ @@ -536,7 +536,7 @@
- +
diff --git a/2021/03/31/2020-年终总结/index.html b/2021/03/31/2020-年终总结/index.html index bcffd15877..b485743807 100644 --- a/2021/03/31/2020-年终总结/index.html +++ b/2021/03/31/2020-年终总结/index.html @@ -316,19 +316,19 @@ @@ -473,7 +473,7 @@ @@ -486,7 +486,7 @@ @@ -511,7 +511,7 @@
- +
diff --git a/2021/04/04/聊聊-dubbo-的线程池/index.html b/2021/04/04/聊聊-dubbo-的线程池/index.html index d5bd2b45ac..dbc5a433d4 100644 --- a/2021/04/04/聊聊-dubbo-的线程池/index.html +++ b/2021/04/04/聊聊-dubbo-的线程池/index.html @@ -248,11 +248,11 @@
, - + , - + , @@ -352,10 +352,10 @@ @@ -474,7 +474,7 @@ @@ -487,7 +487,7 @@ @@ -512,7 +512,7 @@
- +
diff --git a/2021/04/18/rust学习笔记-所有权二/index.html b/2021/04/18/rust学习笔记-所有权二/index.html index 5a34f4a6fd..eefaea757e 100644 --- a/2021/04/18/rust学习笔记-所有权二/index.html +++ b/2021/04/18/rust学习笔记-所有权二/index.html @@ -515,7 +515,7 @@ @@ -528,7 +528,7 @@ @@ -553,7 +553,7 @@
- +
diff --git a/2021/04/18/rust学习笔记/index.html b/2021/04/18/rust学习笔记/index.html index e8d70138dd..36ff8644d8 100644 --- a/2021/04/18/rust学习笔记/index.html +++ b/2021/04/18/rust学习笔记/index.html @@ -467,7 +467,7 @@ @@ -480,7 +480,7 @@ @@ -505,7 +505,7 @@
- +
diff --git a/2021/05/01/Leetcode-48-旋转图像-Rotate-Image-题解分析/index.html b/2021/05/01/Leetcode-48-旋转图像-Rotate-Image-题解分析/index.html index ed33fc6f29..5959e83c94 100644 --- a/2021/05/01/Leetcode-48-旋转图像-Rotate-Image-题解分析/index.html +++ b/2021/05/01/Leetcode-48-旋转图像-Rotate-Image-题解分析/index.html @@ -342,15 +342,15 @@
-
+
+
@@ -497,7 +500,7 @@ @@ -510,7 +513,7 @@ @@ -535,7 +538,7 @@
- +
diff --git a/2021/05/09/聊聊给亲戚朋友的老电脑重装系统那些事儿/index.html b/2021/05/09/聊聊给亲戚朋友的老电脑重装系统那些事儿/index.html new file mode 100644 index 0000000000..94d43b882a --- /dev/null +++ b/2021/05/09/聊聊给亲戚朋友的老电脑重装系统那些事儿/index.html @@ -0,0 +1,763 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 聊聊给亲戚朋友的老电脑重装系统那些事儿 | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+ + +
+ + + +

Nicksxs's Blog

+ +
+

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + + + + + + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + + + + +
+ + + + + +
+

+ 聊聊给亲戚朋友的老电脑重装系统那些事儿 +

+ + +
+ + + + +
+ + +

前面这个五一回去之前,LD 姐姐跟我说电脑很卡了,想让我重装系统,问了下 LD 可能是那个 09 年买的笔记本,想想有点害怕[捂脸],前年有一次好像让我帮忙装了她同事的一个三星的笔记本,本着一些系统洁癖,所以就从开始找纯净版的 win7 家庭版,因为之前那些本基本都自带 win7 的家庭版,而且把激活码就贴在机器下面,然后从三星官网去找官方驱动,还好这个机型的驱动还在,先做了系统镜像,其实感觉这种情况需要两个 U 盘,一个 U 盘装系统作为安装启动盘,一个放驱动,毕竟不是专业装系统的,然后因为官方驱动需要一个个下载一个个安装,然后驱动文件下载的地方还没标明是 32 位还是 64 位的,结果还被 LD 姐姐催着,一直问好没好,略尴尬,索性还是找个一键安装的

+

这次甚至更夸张,上次还让带回去,我准备好了系统镜像啥的,第二天装,这次直接带了两个老旧笔记本过来说让当天就装好,感觉有点像被当修电脑的使,又说这些电脑其实都不用了的,都是为了她们当医生的要每年看会课,然后只能用电脑浏览器看,结果都在用 360 浏览器,真的是万恶的 360,其实以前对 360 没啥坏印象,毕竟以前也经常用,只是对于这些老电脑,360 全家桶真的就是装了就废了,2G 的内存,开机就开着 360 安全卫士,360 杀毒,有一个还装了腾讯电脑管家,然后腾讯视频跟爱奇艺也开机启动了,然后还打开 360 浏览器看课,就算再好的系统也吃不消这么用,重装了系统,还是这么装这些东西,也是分分钟变卡,可惜他们都没啥这类概念。

+

对于他们要看的课,更搞笑的是,明明在页面上注明了说要使用 IE 浏览器,结果他们都在用 360 浏览器看,但是这个也不能完全怪他们,因为实在是现在的 IE 啥的也有开始不兼容 flash 的配置,需要开启兼容配置,但是只要开启了之后就可以直接用 IE 看,比 360 靠谱很多, 资源占用也比较少,360 估计是基于 chromium 加了很多内置的插件,本身 chromium 也是内存大户,但是说这些其实他们也不懂,总觉得找我免费装下系统能撑一段时间,反正对我来说也应该很简单(他们觉得),实际上开始工作以后,我自己想装个双系统都是上淘宝买别人的服务装的,台式机更是几年没动过系统了,因为要重装一大堆软件,数据备份啥的,还有驱动什么的,分区格式,那些驱动精灵啥的也都是越来越坑,一装就给你带一堆垃圾软件。

+

感悟是,总觉得学计算机的就应该会装系统,会修电脑,之前亲戚还拿着一个完全开不起来的笔记本让我来修,这真的是,我说可以找官方维修的,结果我说我搞不定,她直接觉得是修不好了,直接电脑都懒得拿回去了,后面又一次反复解释了才明白,另外就是 360 全家桶,别说老电脑了,新机器都不太吃得消。

+ +
+ + + + + + + + +
+
请我喝杯咖啡
+ + +
+ + + +
+ +
+ + + + +
+ + + + + + +
+ + +
+
+ +
+
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/404.html b/404.html index 5bc4a55bd1..725eb1e029 100644 --- a/404.html +++ b/404.html @@ -317,7 +317,7 @@ @@ -330,7 +330,7 @@ @@ -355,7 +355,7 @@
- +
diff --git a/404/index.html b/404/index.html index 79ac21ef1a..17982b5d28 100644 --- a/404/index.html +++ b/404/index.html @@ -304,7 +304,7 @@ @@ -317,7 +317,7 @@ @@ -342,7 +342,7 @@
- +
diff --git a/archives/2014/12/index.html b/archives/2014/12/index.html index 5b34331184..3223a2d8ae 100644 --- a/archives/2014/12/index.html +++ b/archives/2014/12/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -347,7 +347,7 @@ @@ -360,7 +360,7 @@ @@ -385,7 +385,7 @@
- +
diff --git a/archives/2014/index.html b/archives/2014/index.html index f18d545e77..08134f7a84 100644 --- a/archives/2014/index.html +++ b/archives/2014/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -347,7 +347,7 @@ @@ -360,7 +360,7 @@ @@ -385,7 +385,7 @@
- +
diff --git a/archives/2015/01/index.html b/archives/2015/01/index.html index c84b5e0e05..3a1f2ef412 100644 --- a/archives/2015/01/index.html +++ b/archives/2015/01/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -347,7 +347,7 @@ @@ -360,7 +360,7 @@ @@ -385,7 +385,7 @@
- +
diff --git a/archives/2015/03/index.html b/archives/2015/03/index.html index 13401f2d3f..e0595001ce 100644 --- a/archives/2015/03/index.html +++ b/archives/2015/03/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -347,7 +347,7 @@ @@ -360,7 +360,7 @@ @@ -385,7 +385,7 @@
- +
diff --git a/archives/2015/04/index.html b/archives/2015/04/index.html index 3428051b39..3c4059586e 100644 --- a/archives/2015/04/index.html +++ b/archives/2015/04/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/archives/2015/06/index.html b/archives/2015/06/index.html index df68af4bf4..fc53ca00d7 100644 --- a/archives/2015/06/index.html +++ b/archives/2015/06/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/archives/2015/index.html b/archives/2015/index.html index 68fcedf991..f7d99ea0e9 100644 --- a/archives/2015/index.html +++ b/archives/2015/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -467,7 +467,7 @@ @@ -480,7 +480,7 @@ @@ -505,7 +505,7 @@
- +
diff --git a/archives/2016/07/index.html b/archives/2016/07/index.html index 60a08899c3..79df79c777 100644 --- a/archives/2016/07/index.html +++ b/archives/2016/07/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/archives/2016/08/index.html b/archives/2016/08/index.html index 2669eebff7..1f6725dee2 100644 --- a/archives/2016/08/index.html +++ b/archives/2016/08/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/archives/2016/09/index.html b/archives/2016/09/index.html index bf669cf5b3..fef27fb580 100644 --- a/archives/2016/09/index.html +++ b/archives/2016/09/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/archives/2016/10/index.html b/archives/2016/10/index.html index 6018c921c3..43ffc1e392 100644 --- a/archives/2016/10/index.html +++ b/archives/2016/10/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/archives/2016/11/index.html b/archives/2016/11/index.html index f857e4db05..d1422b4d17 100644 --- a/archives/2016/11/index.html +++ b/archives/2016/11/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/archives/2016/index.html b/archives/2016/index.html index 6eeca43782..f0045db41b 100644 --- a/archives/2016/index.html +++ b/archives/2016/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -427,7 +427,7 @@ @@ -440,7 +440,7 @@ @@ -465,7 +465,7 @@
- +
diff --git a/archives/2017/03/index.html b/archives/2017/03/index.html index 12d0352801..a151d431e5 100644 --- a/archives/2017/03/index.html +++ b/archives/2017/03/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/archives/2017/04/index.html b/archives/2017/04/index.html index f33351c71a..31d2be899f 100644 --- a/archives/2017/04/index.html +++ b/archives/2017/04/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/archives/2017/05/index.html b/archives/2017/05/index.html index 71b89049d9..5b8977dde4 100644 --- a/archives/2017/05/index.html +++ b/archives/2017/05/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/archives/2017/index.html b/archives/2017/index.html index 1244e8c832..30ed81ebfb 100644 --- a/archives/2017/index.html +++ b/archives/2017/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -347,7 +347,7 @@ @@ -360,7 +360,7 @@ @@ -385,7 +385,7 @@
- +
diff --git a/archives/2019/06/index.html b/archives/2019/06/index.html index 13edbd6eba..a9989d5de7 100644 --- a/archives/2019/06/index.html +++ b/archives/2019/06/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/archives/2019/09/index.html b/archives/2019/09/index.html index 9fcbe2cc93..88f0d3d05e 100644 --- a/archives/2019/09/index.html +++ b/archives/2019/09/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/archives/2019/12/index.html b/archives/2019/12/index.html index b9d63fdea6..5b2369475e 100644 --- a/archives/2019/12/index.html +++ b/archives/2019/12/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/archives/2019/index.html b/archives/2019/index.html index eb1f5f3a45..70c4052705 100644 --- a/archives/2019/index.html +++ b/archives/2019/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -427,7 +427,7 @@ @@ -440,7 +440,7 @@ @@ -465,7 +465,7 @@
- +
diff --git a/archives/2020/01/index.html b/archives/2020/01/index.html index 52b3a51a99..7aeadd885e 100644 --- a/archives/2020/01/index.html +++ b/archives/2020/01/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/archives/2020/02/index.html b/archives/2020/02/index.html index b2548a152b..0d141f257f 100644 --- a/archives/2020/02/index.html +++ b/archives/2020/02/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/archives/2020/03/index.html b/archives/2020/03/index.html index 99642c5982..6ad761987c 100644 --- a/archives/2020/03/index.html +++ b/archives/2020/03/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/archives/2020/04/index.html b/archives/2020/04/index.html index fc99becb79..5017908f37 100644 --- a/archives/2020/04/index.html +++ b/archives/2020/04/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/archives/2020/05/index.html b/archives/2020/05/index.html index bf4d8c7dda..424fdcdca7 100644 --- a/archives/2020/05/index.html +++ b/archives/2020/05/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/archives/2020/06/index.html b/archives/2020/06/index.html index 4f6ca95b5e..08c58ca39d 100644 --- a/archives/2020/06/index.html +++ b/archives/2020/06/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/archives/2020/07/index.html b/archives/2020/07/index.html index dcdf7617ff..81aae09db6 100644 --- a/archives/2020/07/index.html +++ b/archives/2020/07/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/archives/2020/08/index.html b/archives/2020/08/index.html index 66a9fe73f7..27d6c22be3 100644 --- a/archives/2020/08/index.html +++ b/archives/2020/08/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/archives/2020/09/index.html b/archives/2020/09/index.html index bf8bcecce3..3b03d34891 100644 --- a/archives/2020/09/index.html +++ b/archives/2020/09/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/archives/2020/10/index.html b/archives/2020/10/index.html index d49d914490..27c728180c 100644 --- a/archives/2020/10/index.html +++ b/archives/2020/10/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/archives/2020/11/index.html b/archives/2020/11/index.html index e13d37b258..8a921b992c 100644 --- a/archives/2020/11/index.html +++ b/archives/2020/11/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/archives/2020/12/index.html b/archives/2020/12/index.html index 3114bcd557..499475d23d 100644 --- a/archives/2020/12/index.html +++ b/archives/2020/12/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/archives/2020/index.html b/archives/2020/index.html index fc658c2d20..73487496ab 100644 --- a/archives/2020/index.html +++ b/archives/2020/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/2020/page/2/index.html b/archives/2020/page/2/index.html index b279e1453a..3c75caef24 100644 --- a/archives/2020/page/2/index.html +++ b/archives/2020/page/2/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/2020/page/3/index.html b/archives/2020/page/3/index.html index 472e29de44..eaeef83d73 100644 --- a/archives/2020/page/3/index.html +++ b/archives/2020/page/3/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/2020/page/4/index.html b/archives/2020/page/4/index.html index d3b12de47d..44a4755260 100644 --- a/archives/2020/page/4/index.html +++ b/archives/2020/page/4/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/2020/page/5/index.html b/archives/2020/page/5/index.html index 20b6e25b83..ead92575fe 100644 --- a/archives/2020/page/5/index.html +++ b/archives/2020/page/5/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/2020/page/6/index.html b/archives/2020/page/6/index.html index 3659396129..40325f4c47 100644 --- a/archives/2020/page/6/index.html +++ b/archives/2020/page/6/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -350,7 +350,7 @@ @@ -363,7 +363,7 @@ @@ -388,7 +388,7 @@
- +
diff --git a/archives/2021/01/index.html b/archives/2021/01/index.html index 952bd77dd0..f4da2b3d32 100644 --- a/archives/2021/01/index.html +++ b/archives/2021/01/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/archives/2021/02/index.html b/archives/2021/02/index.html index e06d9a3db8..fee836e953 100644 --- a/archives/2021/02/index.html +++ b/archives/2021/02/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/archives/2021/03/index.html b/archives/2021/03/index.html index 15294c5dcb..ac2ee2b769 100644 --- a/archives/2021/03/index.html +++ b/archives/2021/03/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/archives/2021/04/index.html b/archives/2021/04/index.html index f5037f9d75..2bac35f53c 100644 --- a/archives/2021/04/index.html +++ b/archives/2021/04/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/archives/2021/05/index.html b/archives/2021/05/index.html index fcbf74e117..c8d40a29e8 100644 --- a/archives/2021/05/index.html +++ b/archives/2021/05/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2021
+ +
@@ -307,7 +327,7 @@ @@ -320,7 +340,7 @@ @@ -345,7 +365,7 @@
- +
diff --git a/archives/2021/index.html b/archives/2021/index.html index ab90261fd4..7a3e5cf8c4 100644 --- a/archives/2021/index.html +++ b/archives/2021/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2021
+ +
@@ -393,26 +413,6 @@
- -
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/2021/page/2/index.html b/archives/2021/page/2/index.html index d0289b24d3..5531a61c9c 100644 --- a/archives/2021/page/2/index.html +++ b/archives/2021/page/2/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2021
+ +
@@ -470,7 +490,7 @@ @@ -483,7 +503,7 @@ @@ -508,7 +528,7 @@
- +
diff --git a/archives/index.html b/archives/index.html index 8ff0f2a086..d4ed084ffe 100644 --- a/archives/index.html +++ b/archives/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2021
+ +
@@ -393,26 +413,6 @@
- -
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/page/10/index.html b/archives/page/10/index.html index 4ab65865d9..83b6d35b03 100644 --- a/archives/page/10/index.html +++ b/archives/page/10/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2015
+ +
@@ -396,26 +416,6 @@
- -
@@ -493,7 +493,7 @@ @@ -506,7 +506,7 @@ @@ -531,7 +531,7 @@
- +
diff --git a/archives/page/11/index.html b/archives/page/11/index.html index 611ff8686d..7268d69a19 100644 --- a/archives/page/11/index.html +++ b/archives/page/11/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2014
+ +
@@ -310,7 +330,7 @@ @@ -323,7 +343,7 @@ @@ -348,7 +368,7 @@
- +
diff --git a/archives/page/2/index.html b/archives/page/2/index.html index b02313e7aa..bedc8255b5 100644 --- a/archives/page/2/index.html +++ b/archives/page/2/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2021
+ +
@@ -392,29 +412,6 @@
-
- 2020 -
- -
@@ -493,7 +490,7 @@ @@ -506,7 +503,7 @@ @@ -531,7 +528,7 @@
- +
diff --git a/archives/page/3/index.html b/archives/page/3/index.html index 8f9e5f8b4e..a4ec2ac3fc 100644 --- a/archives/page/3/index.html +++ b/archives/page/3/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2020
+ +
@@ -393,26 +413,6 @@
- -
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/page/4/index.html b/archives/page/4/index.html index d2e0097299..30b6d45d47 100644 --- a/archives/page/4/index.html +++ b/archives/page/4/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2020
+ +
@@ -393,26 +413,6 @@
- -
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/page/5/index.html b/archives/page/5/index.html index e876fb5595..c358150144 100644 --- a/archives/page/5/index.html +++ b/archives/page/5/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2020
+ +
@@ -393,26 +413,6 @@
- -
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/page/6/index.html b/archives/page/6/index.html index 7c5be7b04c..77de12027a 100644 --- a/archives/page/6/index.html +++ b/archives/page/6/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2020
+ +
@@ -393,26 +413,6 @@
- -
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/page/7/index.html b/archives/page/7/index.html index 4e096d98f0..b2eafa38de 100644 --- a/archives/page/7/index.html +++ b/archives/page/7/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2020
+ +
@@ -393,26 +413,6 @@
- -
@@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/archives/page/8/index.html b/archives/page/8/index.html index 505f86f551..652aff071c 100644 --- a/archives/page/8/index.html +++ b/archives/page/8/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2020
+ +
@@ -395,29 +415,6 @@
-
- 2017 -
- -
@@ -496,7 +493,7 @@ @@ -509,7 +506,7 @@ @@ -534,7 +531,7 @@
- +
diff --git a/archives/page/9/index.html b/archives/page/9/index.html index d1d85fd992..63a89928fc 100644 --- a/archives/page/9/index.html +++ b/archives/page/9/index.html @@ -205,7 +205,7 @@
- Good! 101 posts in total. Keep on posting. + Good! 102 posts in total. Keep on posting.
@@ -213,6 +213,26 @@ 2017
+ +
@@ -395,29 +415,6 @@
-
- 2015 -
- -
@@ -496,7 +493,7 @@ @@ -509,7 +506,7 @@ @@ -534,7 +531,7 @@
- +
diff --git a/atom.xml b/atom.xml index a63dcfebaa..f1d4b05099 100644 --- a/atom.xml +++ b/atom.xml @@ -6,7 +6,7 @@ - 2021-05-01T15:28:26.000Z + 2021-05-09T14:19:51.000Z https://nicksxs.me/ @@ -16,6 +16,39 @@ Hexo + + 聊聊给亲戚朋友的老电脑重装系统那些事儿 + + https://nicksxs.me/2021/05/09/%E8%81%8A%E8%81%8A%E7%BB%99%E4%BA%B2%E6%88%9A%E6%9C%8B%E5%8F%8B%E7%9A%84%E8%80%81%E7%94%B5%E8%84%91%E9%87%8D%E8%A3%85%E7%B3%BB%E7%BB%9F%E9%82%A3%E4%BA%9B%E4%BA%8B%E5%84%BF/ + 2021-05-09T14:19:51.000Z + 2021-05-09T14:19:51.000Z + + + + + + + <p>前面这个五一回去之前,LD 姐姐跟我说电脑很卡了,想让我重装系统,问了下 LD 可能是那个 09 年买的笔记本,想想有点害怕[捂脸],前年有一次好像让我帮忙装了她同事的一个三星的笔记本,本着一些系统洁癖,所以就从开始找纯净版的 win7 家庭版,因为之前那些本基本都自带 + + + + + + + + + + + + + + + + + + + + Leetcode 48 旋转图像(Rotate Image) 题解分析 @@ -192,10 +225,10 @@ - - + + @@ -282,10 +315,10 @@ - - + + @@ -493,12 +526,12 @@ - - + + @@ -537,12 +570,12 @@ - - + + @@ -769,46 +802,6 @@ - - - - 聊聊 mysql 索引的一些细节 - - https://nicksxs.me/2020/12/27/%E8%81%8A%E8%81%8A-mysql-%E7%B4%A2%E5%BC%95%E7%9A%84%E4%B8%80%E4%BA%9B%E7%BB%86%E8%8A%82/ - 2020-12-27T15:49:05.000Z - 2020-12-27T15:49:05.000Z - - - - - - - <p>前几天同事问了我个 mysql 索引的问题,虽然大概知道,但是还是想来实践下,就是 is null,is not null 这类查询是否能用索引,可能之前有些网上的文章说都是不能用索引,但是其实不是,我们来看个小试验</p> -<pre - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/baidu_verify_Gl8jtoDV4z.html b/baidu_verify_Gl8jtoDV4z.html index 5c586d112a..1693d74e88 100644 --- a/baidu_verify_Gl8jtoDV4z.html +++ b/baidu_verify_Gl8jtoDV4z.html @@ -306,7 +306,7 @@ @@ -319,7 +319,7 @@ @@ -344,7 +344,7 @@
- +
diff --git a/baidusitemap.xml b/baidusitemap.xml index 56840539c0..d5c2adae43 100644 --- a/baidusitemap.xml +++ b/baidusitemap.xml @@ -1,5 +1,9 @@ + + https://nicksxs.me/2021/05/09/%E8%81%8A%E8%81%8A%E7%BB%99%E4%BA%B2%E6%88%9A%E6%9C%8B%E5%8F%8B%E7%9A%84%E8%80%81%E7%94%B5%E8%84%91%E9%87%8D%E8%A3%85%E7%B3%BB%E7%BB%9F%E9%82%A3%E4%BA%9B%E4%BA%8B%E5%84%BF/ + 2021-05-09 + https://nicksxs.me/2021/05/01/Leetcode-48-%E6%97%8B%E8%BD%AC%E5%9B%BE%E5%83%8F-Rotate-Image-%E9%A2%98%E8%A7%A3%E5%88%86%E6%9E%90/ 2021-05-01 diff --git a/categories/Binary-Tree/index.html b/categories/Binary-Tree/index.html index e8b0c68fa0..11c0fb252b 100644 --- a/categories/Binary-Tree/index.html +++ b/categories/Binary-Tree/index.html @@ -350,7 +350,7 @@ @@ -363,7 +363,7 @@ @@ -388,7 +388,7 @@
- +
diff --git a/categories/C/Mysql/index.html b/categories/C/Mysql/index.html index 9c54534a47..59b6429d5e 100644 --- a/categories/C/Mysql/index.html +++ b/categories/C/Mysql/index.html @@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/categories/C/Redis/index.html b/categories/C/Redis/index.html index abe21650f8..a4c95b027b 100644 --- a/categories/C/Redis/index.html +++ b/categories/C/Redis/index.html @@ -470,7 +470,7 @@ @@ -483,7 +483,7 @@ @@ -508,7 +508,7 @@
- +
diff --git a/categories/C/index.html b/categories/C/index.html index 962370cca5..58e31b321b 100644 --- a/categories/C/index.html +++ b/categories/C/index.html @@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/categories/C/page/2/index.html b/categories/C/page/2/index.html index 3408774a84..a58242c055 100644 --- a/categories/C/page/2/index.html +++ b/categories/C/page/2/index.html @@ -353,7 +353,7 @@ @@ -366,7 +366,7 @@ @@ -391,7 +391,7 @@
- +
diff --git a/categories/DP/index.html b/categories/DP/index.html index dad9cdb18a..ea6e30d9fd 100644 --- a/categories/DP/index.html +++ b/categories/DP/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Dubbo-RPC-SPI/index.html b/categories/Dubbo-RPC-SPI/index.html index ed15094580..e5a1dd1704 100644 --- a/categories/Dubbo-RPC-SPI/index.html +++ b/categories/Dubbo-RPC-SPI/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/Dubbo-RPC/index.html b/categories/Dubbo-RPC/index.html index 8b6de3f54f..c9827915c3 100644 --- a/categories/Dubbo-RPC/index.html +++ b/categories/Dubbo-RPC/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Dubbo-线程池/index.html b/categories/Dubbo-线程池/index.html index c91a4f29a6..57c2350690 100644 --- a/categories/Dubbo-线程池/index.html +++ b/categories/Dubbo-线程池/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Dubbo/SPI/Adaptive/index.html b/categories/Dubbo/SPI/Adaptive/index.html index e291d3b2db..6d8e4613b7 100644 --- a/categories/Dubbo/SPI/Adaptive/index.html +++ b/categories/Dubbo/SPI/Adaptive/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Dubbo/SPI/index.html b/categories/Dubbo/SPI/index.html index 105a78b073..44d51cc3be 100644 --- a/categories/Dubbo/SPI/index.html +++ b/categories/Dubbo/SPI/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/Dubbo/index.html b/categories/Dubbo/index.html index d532111078..206c1aaee3 100644 --- a/categories/Dubbo/index.html +++ b/categories/Dubbo/index.html @@ -370,7 +370,7 @@ @@ -383,7 +383,7 @@ @@ -408,7 +408,7 @@
- +
diff --git a/categories/Dubbo/容错机制/index.html b/categories/Dubbo/容错机制/index.html index d11f5e68ca..4238a30f92 100644 --- a/categories/Dubbo/容错机制/index.html +++ b/categories/Dubbo/容错机制/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Dubbo/线程池/ThreadPool/index.html b/categories/Dubbo/线程池/ThreadPool/index.html index e3c97c3a2b..ba8b80534f 100644 --- a/categories/Dubbo/线程池/ThreadPool/index.html +++ b/categories/Dubbo/线程池/ThreadPool/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Dubbo/线程池/index.html b/categories/Dubbo/线程池/index.html index 5decdc6d83..4ddd8cb210 100644 --- a/categories/Dubbo/线程池/index.html +++ b/categories/Dubbo/线程池/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Filter/index.html b/categories/Filter/index.html index 49efe13f66..206036491f 100644 --- a/categories/Filter/index.html +++ b/categories/Filter/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Interceptor-AOP/index.html b/categories/Interceptor-AOP/index.html index c8b69763b8..d116b30864 100644 --- a/categories/Interceptor-AOP/index.html +++ b/categories/Interceptor-AOP/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/Apollo/index.html b/categories/Java/Apollo/index.html index 689af75747..4b9fe67416 100644 --- a/categories/Java/Apollo/index.html +++ b/categories/Java/Apollo/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/Apollo/value/index.html b/categories/Java/Apollo/value/index.html index 4d62e01097..7f38ff3fae 100644 --- a/categories/Java/Apollo/value/index.html +++ b/categories/Java/Apollo/value/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/Design-Patterns/index.html b/categories/Java/Design-Patterns/index.html index 7894c94470..992cb5ad98 100644 --- a/categories/Java/Design-Patterns/index.html +++ b/categories/Java/Design-Patterns/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/GC/index.html b/categories/Java/GC/index.html index f6729fc070..c4e45912af 100644 --- a/categories/Java/GC/index.html +++ b/categories/Java/GC/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/GC/jvm/index.html b/categories/Java/GC/jvm/index.html index ef6da1e36f..0108e4d07e 100644 --- a/categories/Java/GC/jvm/index.html +++ b/categories/Java/GC/jvm/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/JVM/index.html b/categories/Java/JVM/index.html index 4fc01eaf0d..b649a8a5ab 100644 --- a/categories/Java/JVM/index.html +++ b/categories/Java/JVM/index.html @@ -330,7 +330,7 @@ @@ -343,7 +343,7 @@ @@ -368,7 +368,7 @@
- +
diff --git a/categories/Java/Maven/index.html b/categories/Java/Maven/index.html index c75bf2accf..0d65fb7263 100644 --- a/categories/Java/Maven/index.html +++ b/categories/Java/Maven/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/Mybatis/index.html b/categories/Java/Mybatis/index.html index c0feccaa9c..0e8cbb82bc 100644 --- a/categories/Java/Mybatis/index.html +++ b/categories/Java/Mybatis/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/Java/Singleton/index.html b/categories/Java/Singleton/index.html index f46182f496..1cb3ba9ca0 100644 --- a/categories/Java/Singleton/index.html +++ b/categories/Java/Singleton/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/index.html b/categories/Java/index.html index ff7fdbfad1..b04d55467f 100644 --- a/categories/Java/index.html +++ b/categories/Java/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/leetcode/Rotate-Image/index.html b/categories/Java/leetcode/Rotate-Image/index.html index 1633bd7336..5b1f80cd7a 100644 --- a/categories/Java/leetcode/Rotate-Image/index.html +++ b/categories/Java/leetcode/Rotate-Image/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/leetcode/index.html b/categories/Java/leetcode/index.html index d53d7adadd..1580cdf7a8 100644 --- a/categories/Java/leetcode/index.html +++ b/categories/Java/leetcode/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/page/2/index.html b/categories/Java/page/2/index.html index 9bdd7a8bef..c35607cc67 100644 --- a/categories/Java/page/2/index.html +++ b/categories/Java/page/2/index.html @@ -490,7 +490,7 @@ @@ -503,7 +503,7 @@ @@ -528,7 +528,7 @@
- +
diff --git a/categories/Java/page/3/index.html b/categories/Java/page/3/index.html index 6507e31179..14cba71339 100644 --- a/categories/Java/page/3/index.html +++ b/categories/Java/page/3/index.html @@ -473,7 +473,7 @@ @@ -486,7 +486,7 @@ @@ -511,7 +511,7 @@
- +
diff --git a/categories/Java/并发/index.html b/categories/Java/并发/index.html index 953fc7fe8d..b0dbf178d4 100644 --- a/categories/Java/并发/index.html +++ b/categories/Java/并发/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/Java/类加载/index.html b/categories/Java/类加载/index.html index 9050d4e3a3..aa97c163e3 100644 --- a/categories/Java/类加载/index.html +++ b/categories/Java/类加载/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Java/集合/index.html b/categories/Java/集合/index.html index 9196f338bb..bc3231dd13 100644 --- a/categories/Java/集合/index.html +++ b/categories/Java/集合/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Linux/index.html b/categories/Linux/index.html index 21b25fb3e0..556c9d226f 100644 --- a/categories/Linux/index.html +++ b/categories/Linux/index.html @@ -350,7 +350,7 @@ @@ -363,7 +363,7 @@ @@ -388,7 +388,7 @@
- +
diff --git a/categories/Linux/命令/echo/index.html b/categories/Linux/命令/echo/index.html index b599b067fa..186243e4cb 100644 --- a/categories/Linux/命令/echo/index.html +++ b/categories/Linux/命令/echo/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Linux/命令/grep/index.html b/categories/Linux/命令/grep/index.html index dff1eb445c..4596e7e162 100644 --- a/categories/Linux/命令/grep/index.html +++ b/categories/Linux/命令/grep/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Linux/命令/index.html b/categories/Linux/命令/index.html index fbe71c67e1..a763eada9c 100644 --- a/categories/Linux/命令/index.html +++ b/categories/Linux/命令/index.html @@ -350,7 +350,7 @@ @@ -363,7 +363,7 @@ @@ -388,7 +388,7 @@
- +
diff --git a/categories/Linux/命令/top/index.html b/categories/Linux/命令/top/index.html index 23f00d601c..6f6b9630a3 100644 --- a/categories/Linux/命令/top/index.html +++ b/categories/Linux/命令/top/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/MQ/index.html b/categories/MQ/index.html index 0717a50164..95ceac1301 100644 --- a/categories/MQ/index.html +++ b/categories/MQ/index.html @@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/categories/Mac/Homebrew/index.html b/categories/Mac/Homebrew/index.html index c5cfca9e24..a303e21f75 100644 --- a/categories/Mac/Homebrew/index.html +++ b/categories/Mac/Homebrew/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Mac/index.html b/categories/Mac/index.html index f09621c9d5..1a1e20ad81 100644 --- a/categories/Mac/index.html +++ b/categories/Mac/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Mybatis/index.html b/categories/Mybatis/index.html index 1b71cea668..2fdd31a2b7 100644 --- a/categories/Mybatis/index.html +++ b/categories/Mybatis/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Mybatis/缓存/index.html b/categories/Mybatis/缓存/index.html index ce553dcdde..539dd9d44f 100644 --- a/categories/Mybatis/缓存/index.html +++ b/categories/Mybatis/缓存/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Mysql/Sql注入/index.html b/categories/Mysql/Sql注入/index.html index cd694d22ad..6d06a99a43 100644 --- a/categories/Mysql/Sql注入/index.html +++ b/categories/Mysql/Sql注入/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Mysql/index.html b/categories/Mysql/index.html index 23e2b66678..b0c242b295 100644 --- a/categories/Mysql/index.html +++ b/categories/Mysql/index.html @@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/categories/Mysql/数据结构/index.html b/categories/Mysql/数据结构/index.html index d4fc2b353b..295d318006 100644 --- a/categories/Mysql/数据结构/index.html +++ b/categories/Mysql/数据结构/index.html @@ -347,7 +347,7 @@ @@ -360,7 +360,7 @@ @@ -385,7 +385,7 @@
- +
diff --git a/categories/Mysql/源码/index.html b/categories/Mysql/源码/index.html index 5a5c356d0b..347b7cbd4d 100644 --- a/categories/Mysql/源码/index.html +++ b/categories/Mysql/源码/index.html @@ -347,7 +347,7 @@ @@ -360,7 +360,7 @@ @@ -385,7 +385,7 @@
- +
diff --git a/categories/Mysql/索引/index.html b/categories/Mysql/索引/index.html index 9711b83925..5e73314308 100644 --- a/categories/Mysql/索引/index.html +++ b/categories/Mysql/索引/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Redis/Distributed-Lock/index.html b/categories/Redis/Distributed-Lock/index.html index 91f0bc5e63..54c8f11134 100644 --- a/categories/Redis/Distributed-Lock/index.html +++ b/categories/Redis/Distributed-Lock/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Redis/index.html b/categories/Redis/index.html index b6123d747f..d31e70e8bc 100644 --- a/categories/Redis/index.html +++ b/categories/Redis/index.html @@ -493,7 +493,7 @@ @@ -506,7 +506,7 @@ @@ -531,7 +531,7 @@
- +
diff --git a/categories/Redis/应用/index.html b/categories/Redis/应用/index.html index f333f5aab9..a9f6b62079 100644 --- a/categories/Redis/应用/index.html +++ b/categories/Redis/应用/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Redis/数据结构/index.html b/categories/Redis/数据结构/index.html index d332a28b8b..48d9ff6cae 100644 --- a/categories/Redis/数据结构/index.html +++ b/categories/Redis/数据结构/index.html @@ -450,7 +450,7 @@ @@ -463,7 +463,7 @@ @@ -488,7 +488,7 @@
- +
diff --git a/categories/Redis/源码/index.html b/categories/Redis/源码/index.html index d73f8031a3..3e43acb6f1 100644 --- a/categories/Redis/源码/index.html +++ b/categories/Redis/源码/index.html @@ -450,7 +450,7 @@ @@ -463,7 +463,7 @@ @@ -488,7 +488,7 @@
- +
diff --git a/categories/Redis/缓存/index.html b/categories/Redis/缓存/index.html index 493b1d19c3..026952b46c 100644 --- a/categories/Redis/缓存/index.html +++ b/categories/Redis/缓存/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/RocketMQ/index.html b/categories/RocketMQ/index.html index 8905fc0dd7..1849802063 100644 --- a/categories/RocketMQ/index.html +++ b/categories/RocketMQ/index.html @@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/categories/Rust/index.html b/categories/Rust/index.html index 3148d18833..ea2c80f56d 100644 --- a/categories/Rust/index.html +++ b/categories/Rust/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/Spring/Mybatis/index.html b/categories/Spring/Mybatis/index.html index 11d9b022c7..ace1be3002 100644 --- a/categories/Spring/Mybatis/index.html +++ b/categories/Spring/Mybatis/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/Spring/Servlet/Interceptor/AOP/index.html b/categories/Spring/Servlet/Interceptor/AOP/index.html index 4468e15d2f..aa579f32ee 100644 --- a/categories/Spring/Servlet/Interceptor/AOP/index.html +++ b/categories/Spring/Servlet/Interceptor/AOP/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Spring/Servlet/Interceptor/index.html b/categories/Spring/Servlet/Interceptor/index.html index 1e18f34bce..07e4a1ee11 100644 --- a/categories/Spring/Servlet/Interceptor/index.html +++ b/categories/Spring/Servlet/Interceptor/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Spring/Servlet/index.html b/categories/Spring/Servlet/index.html index e811686c01..0f9beb1f3e 100644 --- a/categories/Spring/Servlet/index.html +++ b/categories/Spring/Servlet/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/Spring/index.html b/categories/Spring/index.html index eb32b608d7..debce1547e 100644 --- a/categories/Spring/index.html +++ b/categories/Spring/index.html @@ -347,7 +347,7 @@ @@ -360,7 +360,7 @@ @@ -385,7 +385,7 @@
- +
diff --git a/categories/Thread-dump/index.html b/categories/Thread-dump/index.html index 4b14b0d024..6ce182d53a 100644 --- a/categories/Thread-dump/index.html +++ b/categories/Thread-dump/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/data-analysis/index.html b/categories/data-analysis/index.html index d3dbca621e..dd75c37e71 100644 --- a/categories/data-analysis/index.html +++ b/categories/data-analysis/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/docker/index.html b/categories/docker/index.html index 2895929c0b..e028888ef2 100644 --- a/categories/docker/index.html +++ b/categories/docker/index.html @@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/categories/docker/介绍/index.html b/categories/docker/介绍/index.html index 57bfa6d7d8..b97e7d1e8d 100644 --- a/categories/docker/介绍/index.html +++ b/categories/docker/介绍/index.html @@ -347,7 +347,7 @@ @@ -360,7 +360,7 @@ @@ -385,7 +385,7 @@
- +
diff --git a/categories/docker/发行版本/index.html b/categories/docker/发行版本/index.html index 9ab6efac0f..c45af0baa6 100644 --- a/categories/docker/发行版本/index.html +++ b/categories/docker/发行版本/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/index.html b/categories/index.html index 4c976ef369..9a6042a9d2 100644 --- a/categories/index.html +++ b/categories/index.html @@ -228,7 +228,7 @@ 129 categories in total
- +
@@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/leetcode/index.html b/categories/leetcode/index.html index f56c71e0d4..e7a82a8598 100644 --- a/categories/leetcode/index.html +++ b/categories/leetcode/index.html @@ -496,7 +496,7 @@ @@ -509,7 +509,7 @@ @@ -534,7 +534,7 @@
- +
diff --git a/categories/leetcode/java/Binary-Tree/DFS/index.html b/categories/leetcode/java/Binary-Tree/DFS/index.html index 6a36267be8..f117ee9882 100644 --- a/categories/leetcode/java/Binary-Tree/DFS/index.html +++ b/categories/leetcode/java/Binary-Tree/DFS/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/leetcode/java/Binary-Tree/index.html b/categories/leetcode/java/Binary-Tree/index.html index a30269da05..d6e89e34d2 100644 --- a/categories/leetcode/java/Binary-Tree/index.html +++ b/categories/leetcode/java/Binary-Tree/index.html @@ -350,7 +350,7 @@ @@ -363,7 +363,7 @@ @@ -388,7 +388,7 @@
- +
diff --git a/categories/leetcode/java/DP/index.html b/categories/leetcode/java/DP/index.html index d143a3d8e9..fd154bd6b0 100644 --- a/categories/leetcode/java/DP/index.html +++ b/categories/leetcode/java/DP/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/leetcode/java/index.html b/categories/leetcode/java/index.html index 06ffb70159..fceadb7e4f 100644 --- a/categories/leetcode/java/index.html +++ b/categories/leetcode/java/index.html @@ -470,7 +470,7 @@ @@ -483,7 +483,7 @@ @@ -508,7 +508,7 @@
- +
diff --git a/categories/leetcode/java/linked-list/index.html b/categories/leetcode/java/linked-list/index.html index 28478b99f5..07abe58b45 100644 --- a/categories/leetcode/java/linked-list/index.html +++ b/categories/leetcode/java/linked-list/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/leetcode/java/stack/index.html b/categories/leetcode/java/stack/index.html index f72d67231b..86348df2b5 100644 --- a/categories/leetcode/java/stack/index.html +++ b/categories/leetcode/java/stack/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/leetcode/java/string/index.html b/categories/leetcode/java/string/index.html index e2d28d1e9b..bfd074d738 100644 --- a/categories/leetcode/java/string/index.html +++ b/categories/leetcode/java/string/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/leetcode/page/2/index.html b/categories/leetcode/page/2/index.html index 2a13351ab1..b36c797180 100644 --- a/categories/leetcode/page/2/index.html +++ b/categories/leetcode/page/2/index.html @@ -493,7 +493,7 @@ @@ -506,7 +506,7 @@ @@ -531,7 +531,7 @@
- +
diff --git a/categories/leetcode/page/3/index.html b/categories/leetcode/page/3/index.html index 4f7f58436b..5c1d859da2 100644 --- a/categories/leetcode/page/3/index.html +++ b/categories/leetcode/page/3/index.html @@ -333,7 +333,7 @@ @@ -346,7 +346,7 @@ @@ -371,7 +371,7 @@
- +
diff --git a/categories/linked-list/index.html b/categories/linked-list/index.html index a590c3b49e..03ab69bc89 100644 --- a/categories/linked-list/index.html +++ b/categories/linked-list/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/nginx/index.html b/categories/nginx/index.html index c378e89f34..372b553169 100644 --- a/categories/nginx/index.html +++ b/categories/nginx/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/php/icu4c/index.html b/categories/php/icu4c/index.html index 645a67f458..faf57a9b8f 100644 --- a/categories/php/icu4c/index.html +++ b/categories/php/icu4c/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/php/index.html b/categories/php/index.html index 5b8834eac4..f5fbae8725 100644 --- a/categories/php/index.html +++ b/categories/php/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/stack/index.html b/categories/stack/index.html index f0235ed161..1acf16143c 100644 --- a/categories/stack/index.html +++ b/categories/stack/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/中间件/RocketMQ/index.html b/categories/中间件/RocketMQ/index.html index b6fd65940e..6e6a777ebc 100644 --- a/categories/中间件/RocketMQ/index.html +++ b/categories/中间件/RocketMQ/index.html @@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/categories/中间件/index.html b/categories/中间件/index.html index 4b1b3266d1..e0d27f7106 100644 --- a/categories/中间件/index.html +++ b/categories/中间件/index.html @@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/categories/分布式事务/index.html b/categories/分布式事务/index.html index dbe33bc8f4..1b6bf42f6c 100644 --- a/categories/分布式事务/index.html +++ b/categories/分布式事务/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/分布式事务/三阶段提交/index.html b/categories/分布式事务/三阶段提交/index.html index e5fcc1c2ee..61d9cab906 100644 --- a/categories/分布式事务/三阶段提交/index.html +++ b/categories/分布式事务/三阶段提交/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/分布式事务/两阶段提交/index.html b/categories/分布式事务/两阶段提交/index.html index ec7714c7e8..0613c028df 100644 --- a/categories/分布式事务/两阶段提交/index.html +++ b/categories/分布式事务/两阶段提交/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/字符串-online/index.html b/categories/字符串-online/index.html index 394a93a2d8..c177ccdcae 100644 --- a/categories/字符串-online/index.html +++ b/categories/字符串-online/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/小技巧/grep/index.html b/categories/小技巧/grep/index.html index a3435038a1..270227830d 100644 --- a/categories/小技巧/grep/index.html +++ b/categories/小技巧/grep/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/小技巧/grep/查日志/index.html b/categories/小技巧/grep/查日志/index.html index 49134a99e1..fb1a6171bc 100644 --- a/categories/小技巧/grep/查日志/index.html +++ b/categories/小技巧/grep/查日志/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/小技巧/index.html b/categories/小技巧/index.html index 414cd4ff9c..d8efa59fda 100644 --- a/categories/小技巧/index.html +++ b/categories/小技巧/index.html @@ -330,7 +330,7 @@ @@ -343,7 +343,7 @@ @@ -368,7 +368,7 @@
- +
diff --git a/categories/小技巧/top/index.html b/categories/小技巧/top/index.html index c333ce3f41..fa69c99eaf 100644 --- a/categories/小技巧/top/index.html +++ b/categories/小技巧/top/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/小技巧/top/排序/index.html b/categories/小技巧/top/排序/index.html index 4c5beed5e1..083fc8cac5 100644 --- a/categories/小技巧/top/排序/index.html +++ b/categories/小技巧/top/排序/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/工具/index.html b/categories/工具/index.html index c977394921..e078997dc1 100644 --- a/categories/工具/index.html +++ b/categories/工具/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/年终总结/2020/index.html b/categories/年终总结/2020/index.html index b850977b6a..ff890d4cb4 100644 --- a/categories/年终总结/2020/index.html +++ b/categories/年终总结/2020/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/年终总结/index.html b/categories/年终总结/index.html index 310a677283..386f7b765e 100644 --- a/categories/年终总结/index.html +++ b/categories/年终总结/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/持续集成/index.html b/categories/持续集成/index.html index c298711dce..072a691ff7 100644 --- a/categories/持续集成/index.html +++ b/categories/持续集成/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/消息队列/RocketMQ/index.html b/categories/消息队列/RocketMQ/index.html index 0cdd830fe0..96fbe6505a 100644 --- a/categories/消息队列/RocketMQ/index.html +++ b/categories/消息队列/RocketMQ/index.html @@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/categories/消息队列/index.html b/categories/消息队列/index.html index aa8dbd903a..229550a3c9 100644 --- a/categories/消息队列/index.html +++ b/categories/消息队列/index.html @@ -367,7 +367,7 @@ @@ -380,7 +380,7 @@ @@ -405,7 +405,7 @@
- +
diff --git a/categories/生活/index.html b/categories/生活/index.html index cbc40b7eda..df2e9bb50e 100644 --- a/categories/生活/index.html +++ b/categories/生活/index.html @@ -214,6 +214,26 @@ 2021
+ +
@@ -397,26 +417,6 @@
- -
@@ -493,7 +493,7 @@ @@ -506,7 +506,7 @@ @@ -531,7 +531,7 @@
- +
diff --git a/categories/生活/page/2/index.html b/categories/生活/page/2/index.html index 955aa34e83..b7c2168664 100644 --- a/categories/生活/page/2/index.html +++ b/categories/生活/page/2/index.html @@ -214,6 +214,26 @@ 2020
+ +
@@ -453,7 +473,7 @@ @@ -466,7 +486,7 @@ @@ -491,7 +511,7 @@
- +
diff --git a/categories/生活/公交/index.html b/categories/生活/公交/index.html index adfbdbfe06..7ab439fff5 100644 --- a/categories/生活/公交/index.html +++ b/categories/生活/公交/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/生活/吐槽/index.html b/categories/生活/吐槽/index.html index d4f107933d..675f26ac27 100644 --- a/categories/生活/吐槽/index.html +++ b/categories/生活/吐槽/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/生活/吐槽/疫情/index.html b/categories/生活/吐槽/疫情/index.html index 6b8d89e5b5..767f3538c5 100644 --- a/categories/生活/吐槽/疫情/index.html +++ b/categories/生活/吐槽/疫情/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/生活/吐槽/疫情/口罩/index.html b/categories/生活/吐槽/疫情/口罩/index.html index 56cd84fb51..716b01e25d 100644 --- a/categories/生活/吐槽/疫情/口罩/index.html +++ b/categories/生活/吐槽/疫情/口罩/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/吐槽/疫情/美国/index.html b/categories/生活/吐槽/疫情/美国/index.html index a461f3f2bb..8301c2aef1 100644 --- a/categories/生活/吐槽/疫情/美国/index.html +++ b/categories/生活/吐槽/疫情/美国/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/年中总结/2020/index.html b/categories/生活/年中总结/2020/index.html index dbcd5c53a1..79b554b2c9 100644 --- a/categories/生活/年中总结/2020/index.html +++ b/categories/生活/年中总结/2020/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/年中总结/index.html b/categories/生活/年中总结/index.html index 4306a0bd47..b3ea0fc9d2 100644 --- a/categories/生活/年中总结/index.html +++ b/categories/生活/年中总结/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/年终总结/2019/index.html b/categories/生活/年终总结/2019/index.html index 221148c87d..0a9e970740 100644 --- a/categories/生活/年终总结/2019/index.html +++ b/categories/生活/年终总结/2019/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/年终总结/2020/index.html b/categories/生活/年终总结/2020/index.html index 1029e73997..b0ef693b66 100644 --- a/categories/生活/年终总结/2020/index.html +++ b/categories/生活/年终总结/2020/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/年终总结/index.html b/categories/生活/年终总结/index.html index dd373f02bf..2b208a00ad 100644 --- a/categories/生活/年终总结/index.html +++ b/categories/生活/年终总结/index.html @@ -330,7 +330,7 @@ @@ -343,7 +343,7 @@ @@ -368,7 +368,7 @@
- +
diff --git a/categories/生活/开车/index.html b/categories/生活/开车/index.html index 292f21587e..ad2e020d63 100644 --- a/categories/生活/开车/index.html +++ b/categories/生活/开车/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/影评/2020/index.html b/categories/生活/影评/2020/index.html index 879203cfcf..a7255549bb 100644 --- a/categories/生活/影评/2020/index.html +++ b/categories/生活/影评/2020/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/影评/index.html b/categories/生活/影评/index.html index d5193172f7..ad5d032df3 100644 --- a/categories/生活/影评/index.html +++ b/categories/生活/影评/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/旅游/index.html b/categories/生活/旅游/index.html index 20eb93a471..550f2e9fe6 100644 --- a/categories/生活/旅游/index.html +++ b/categories/生活/旅游/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/生活/运动/index.html b/categories/生活/运动/index.html index 420c7e5401..6ced33651c 100644 --- a/categories/生活/运动/index.html +++ b/categories/生活/运动/index.html @@ -407,7 +407,7 @@ @@ -420,7 +420,7 @@ @@ -445,7 +445,7 @@
- +
diff --git a/categories/生活/运动/跑步/index.html b/categories/生活/运动/跑步/index.html index 005318e668..bcab3e6d06 100644 --- a/categories/生活/运动/跑步/index.html +++ b/categories/生活/运动/跑步/index.html @@ -407,7 +407,7 @@ @@ -420,7 +420,7 @@ @@ -445,7 +445,7 @@
- +
diff --git a/categories/生活/运动/跑步/干活/index.html b/categories/生活/运动/跑步/干活/index.html index f88e7c8a54..3339b83532 100644 --- a/categories/生活/运动/跑步/干活/index.html +++ b/categories/生活/运动/跑步/干活/index.html @@ -387,7 +387,7 @@ @@ -400,7 +400,7 @@ @@ -425,7 +425,7 @@
- +
diff --git a/categories/缓存/index.html b/categories/缓存/index.html index 265a90cb1a..c100a2435c 100644 --- a/categories/缓存/index.html +++ b/categories/缓存/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/缓存/穿透/index.html b/categories/缓存/穿透/index.html index 9214599dcd..44b4b4c59c 100644 --- a/categories/缓存/穿透/index.html +++ b/categories/缓存/穿透/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/缓存/穿透/击穿/index.html b/categories/缓存/穿透/击穿/index.html index 45ca3c5879..c0d99f941c 100644 --- a/categories/缓存/穿透/击穿/index.html +++ b/categories/缓存/穿透/击穿/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/缓存/穿透/击穿/雪崩/index.html b/categories/缓存/穿透/击穿/雪崩/index.html index 84c7340bce..30b4083602 100644 --- a/categories/缓存/穿透/击穿/雪崩/index.html +++ b/categories/缓存/穿透/击穿/雪崩/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/语言/index.html b/categories/语言/index.html index b3b60c9559..897e23c4cc 100644 --- a/categories/语言/index.html +++ b/categories/语言/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/categories/读后感/index.html b/categories/读后感/index.html index 62fc719d8e..2be81b7541 100644 --- a/categories/读后感/index.html +++ b/categories/读后感/index.html @@ -330,7 +330,7 @@ @@ -343,7 +343,7 @@ @@ -368,7 +368,7 @@
- +
diff --git a/categories/读后感/村上春树/index.html b/categories/读后感/村上春树/index.html index 740aec9454..800924155a 100644 --- a/categories/读后感/村上春树/index.html +++ b/categories/读后感/村上春树/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/读后感/白岩松/index.html b/categories/读后感/白岩松/index.html index 194f382efa..fd42435fc5 100644 --- a/categories/读后感/白岩松/index.html +++ b/categories/读后感/白岩松/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/读后感/白岩松/幸福了吗/index.html b/categories/读后感/白岩松/幸福了吗/index.html index 9b8354e0af..0993829474 100644 --- a/categories/读后感/白岩松/幸福了吗/index.html +++ b/categories/读后感/白岩松/幸福了吗/index.html @@ -307,7 +307,7 @@ @@ -320,7 +320,7 @@ @@ -345,7 +345,7 @@
- +
diff --git a/categories/问题排查/index.html b/categories/问题排查/index.html index 94f0e95b0d..e6b54e0214 100644 --- a/categories/问题排查/index.html +++ b/categories/问题排查/index.html @@ -327,7 +327,7 @@ @@ -340,7 +340,7 @@ @@ -365,7 +365,7 @@
- +
diff --git a/css/main.css b/css/main.css index b5f69078f1..f4e188c2fd 100644 --- a/css/main.css +++ b/css/main.css @@ -1261,7 +1261,7 @@ pre .javascript .function { } .links-of-author a::before, .links-of-author span.exturl::before { - background: #6cff08; + background: #4dff6b; border-radius: 50%; content: ' '; display: inline-block; diff --git a/index.html b/index.html index f2363f3716..e4834859a5 100644 --- a/index.html +++ b/index.html @@ -200,6 +200,99 @@ +
+ + + + + +
+

+ + +

+ + +
+ + + + +
+ + +

前面这个五一回去之前,LD 姐姐跟我说电脑很卡了,想让我重装系统,问了下 LD 可能是那个 09 年买的笔记本,想想有点害怕[捂脸],前年有一次好像让我帮忙装了她同事的一个三星的笔记本,本着一些系统洁癖,所以就从开始找纯净版的 win7 家庭版,因为之前那些本基本都自带 win7 的家庭版,而且把激活码就贴在机器下面,然后从三星官网去找官方驱动,还好这个机型的驱动还在,先做了系统镜像,其实感觉这种情况需要两个 U 盘,一个 U 盘装系统作为安装启动盘,一个放驱动,毕竟不是专业装系统的,然后因为官方驱动需要一个个下载一个个安装,然后驱动文件下载的地方还没标明是 32 位还是 64 位的,结果还被 LD 姐姐催着,一直问好没好,略尴尬,索性还是找个一键安装的

+

这次甚至更夸张,上次还让带回去,我准备好了系统镜像啥的,第二天装,这次直接带了两个老旧笔记本过来说让当天就装好,感觉有点像被当修电脑的使,又说这些电脑其实都不用了的,都是为了她们当医生的要每年看会课,然后只能用电脑浏览器看,结果都在用 360 浏览器,真的是万恶的 360,其实以前对 360 没啥坏印象,毕竟以前也经常用,只是对于这些老电脑,360 全家桶真的就是装了就废了,2G 的内存,开机就开着 360 安全卫士,360 杀毒,有一个还装了腾讯电脑管家,然后腾讯视频跟爱奇艺也开机启动了,然后还打开 360 浏览器看课,就算再好的系统也吃不消这么用,重装了系统,还是这么装这些东西,也是分分钟变卡,可惜他们都没啥这类概念。

+

对于他们要看的课,更搞笑的是,明明在页面上注明了说要使用 IE 浏览器,结果他们都在用 360 浏览器看,但是这个也不能完全怪他们,因为实在是现在的 IE 啥的也有开始不兼容 flash 的配置,需要开启兼容配置,但是只要开启了之后就可以直接用 IE 看,比 360 靠谱很多, 资源占用也比较少,360 估计是基于 chromium 加了很多内置的插件,本身 chromium 也是内存大户,但是说这些其实他们也不懂,总觉得找我免费装下系统能撑一段时间,反正对我来说也应该很简单(他们觉得),实际上开始工作以后,我自己想装个双系统都是上淘宝买别人的服务装的,台式机更是几年没动过系统了,因为要重装一大堆软件,数据备份啥的,还有驱动什么的,分区格式,那些驱动精灵啥的也都是越来越坑,一装就给你带一堆垃圾软件。

+

感悟是,总觉得学计算机的就应该会装系统,会修电脑,之前亲戚还拿着一个完全开不起来的笔记本让我来修,这真的是,我说可以找官方维修的,结果我说我搞不定,她直接觉得是修不好了,直接电脑都懒得拿回去了,后面又一次反复解释了才明白,另外就是 360 全家桶,别说老电脑了,新机器都不太吃得消。

+ + +
+ + + + + + +
+
+
+
+ + + + + + +
@@ -708,150 +801,6 @@ - - - -
- - - - - -
-

- - -

- - -
- - - - -
- - -

之前没注意到这一块,只是比较模糊的印象 dubbo 自己基于 ThreadPoolExecutor 定义了几个线程池,但是没具体看过,主要是觉得就是为了避免使用 jdk 自带的那几个(java.util.concurrent.Executors),防止出现那些问题
看下代码目录主要是这几个

-
    -
  • FixedThreadPool:创建一个复用固定个数线程的线程池。
    简单看下代码
    public Executor getExecutor(URL url) {
    -        String name = url.getParameter("threadname", "Dubbo");
    -        int threads = url.getParameter("threads", 200);
    -        int queues = url.getParameter("queues", 0);
    -        return new ThreadPoolExecutor(threads, threads, 0L, TimeUnit.MILLISECONDS, (BlockingQueue)(queues == 0 ? new SynchronousQueue() : (queues < 0 ? new LinkedBlockingQueue() : new LinkedBlockingQueue(queues))), new NamedThreadFactory(name, true), new AbortPolicyWithReport(name, url));
    -    }
    -可以看到核心线程数跟最大线程数一致,也就是说就不会在核心线程数和最大线程数之间动态变化了
  • -
  • LimitedThreadPool:创建一个线程池,这个线程池中线程个数随着需要量动态增加,但是数量不超过配置的阈值的个数,另外空闲线程不会被回收,会一直存在。
    public Executor getExecutor(URL url) {
    -        String name = url.getParameter("threadname", "Dubbo");
    -        int cores = url.getParameter("corethreads", 0);
    -        int threads = url.getParameter("threads", 200);
    -        int queues = url.getParameter("queues", 0);
    -        return new ThreadPoolExecutor(cores, threads, 9223372036854775807L, TimeUnit.MILLISECONDS, (BlockingQueue)(queues == 0 ? new SynchronousQueue() : (queues < 0 ? new LinkedBlockingQueue() : new LinkedBlockingQueue(queues))), new NamedThreadFactory(name, true), new AbortPolicyWithReport(name, url));
    -    }
    -这个特点主要是创建了保活时间特别长,即可以认为不会被回收了
  • -
  • EagerThreadPool :创建一个线程池,这个线程池当所有核心线程都处于忙碌状态时候,创建新的线程来执行新任务,而不是把任务放入线程池阻塞队列。
    public Executor getExecutor(URL url) {
    -        String name = url.getParameter("threadname", "Dubbo");
    -        int cores = url.getParameter("corethreads", 0);
    -        int threads = url.getParameter("threads", 2147483647);
    -        int queues = url.getParameter("queues", 0);
    -        int alive = url.getParameter("alive", 60000);
    -        TaskQueue<Runnable> taskQueue = new TaskQueue(queues <= 0 ? 1 : queues);
    -        EagerThreadPoolExecutor executor = new EagerThreadPoolExecutor(cores, threads, (long)alive, TimeUnit.MILLISECONDS, taskQueue, new NamedThreadFactory(name, true), new AbortPolicyWithReport(name, url));
    -        taskQueue.setExecutor(executor);
    -        return executor;
    -    }
    -这个是改动最多的一个了,因为需要实现这个机制,有兴趣的可以详细看下
  • -
  • CachedThreadPool: 创建一个自适应线程池,当线程处于空闲1分钟时候,线程会被回收,当有新请求到来时候会创建新线程
    public Executor getExecutor(URL url) {
    -        String name = url.getParameter("threadname", "Dubbo");
    -        int cores = url.getParameter("corethreads", 0);
    -        int threads = url.getParameter("threads", 2147483647);
    -        int queues = url.getParameter("queues", 0);
    -        int alive = url.getParameter("alive", 60000);
    -        return new ThreadPoolExecutor(cores, threads, (long)alive, TimeUnit.MILLISECONDS, (BlockingQueue)(queues == 0 ? new SynchronousQueue() : (queues < 0 ? new LinkedBlockingQueue() : new LinkedBlockingQueue(queues))), new NamedThreadFactory(name, true), new AbortPolicyWithReport(name, url));
    -    }
    -这里可以看到线程池的配置,核心是 0,最大线程数是 2147483647,保活时间是一分钟
    只是非常简略的介绍下,有兴趣可以自行阅读代码。
  • -
- - -
- - - - - - -
-
-
-
- - - - @@ -961,7 +910,7 @@
- +
diff --git a/leancloud_counter_security_urls.json b/leancloud_counter_security_urls.json index 78d05d83a0..f91a8ed8f1 100644 --- a/leancloud_counter_security_urls.json +++ b/leancloud_counter_security_urls.json @@ -1 +1 @@ -[{"title":"2020年中总结","url":"/2020/07/11/2020年中总结/"},{"title":"村上春树《1Q84》读后感","url":"/2019/12/18/1Q84读后感/"},{"title":"2019年终总结","url":"/2020/02/01/2019年终总结/"},{"title":"34_Search_for_a_Range","url":"/2016/08/14/34-Search-for-a-Range/"},{"title":"AbstractQueuedSynchronizer","url":"/2019/09/23/AbstractQueuedSynchronizer/"},{"title":"add-two-number","url":"/2015/04/14/Add-Two-Number/"},{"title":"Apollo 的 value 注解是怎么自动更新的","url":"/2020/11/01/Apollo-的-value-注解是怎么自动更新的/"},{"title":"Clone Graph Part I","url":"/2014/12/30/Clone-Graph-Part-I/"},{"title":"2020 年终总结","url":"/2021/03/31/2020-年终总结/"},{"title":"Comparator使用小记","url":"/2020/04/05/Comparator使用小记/"},{"title":"G1收集器概述","url":"/2020/02/09/G1收集器概述/"},{"title":"AQS篇一","url":"/2021/02/14/AQS篇一/"},{"title":"Leetcode 104 二叉树的最大深度(Maximum Depth of Binary Tree) 题解分析","url":"/2020/10/25/Leetcode-104-二叉树的最大深度-Maximum-Depth-of-Binary-Tree-题解分析/"},{"title":"Leetcode 105 从前序与中序遍历序列构造二叉树(Construct Binary Tree from Preorder and Inorder Traversal) 题解分析","url":"/2020/12/13/Leetcode-105-从前序与中序遍历序列构造二叉树-Construct-Binary-Tree-from-Preorder-and-Inorder-Traversal-题解分析/"},{"title":"Leetcode 124 二叉树中的最大路径和(Binary Tree Maximum Path Sum) 题解分析","url":"/2021/01/24/Leetcode-124-二叉树中的最大路径和-Binary-Tree-Maximum-Path-Sum-题解分析/"},{"title":"Leetcode 155 最小栈(Min Stack) 题解分析","url":"/2020/12/06/Leetcode-155-最小栈-Min-Stack-题解分析/"},{"title":"Leetcode 121 买卖股票的最佳时机(Best Time to Buy and Sell Stock) 题解分析","url":"/2021/03/14/Leetcode-121-买卖股票的最佳时机-Best-Time-to-Buy-and-Sell-Stock-题解分析/"},{"title":"Leetcode 2 Add Two Numbers 题解分析","url":"/2020/10/11/Leetcode-2-Add-Two-Numbers-题解分析/"},{"title":"Leetcode 3 Longest Substring Without Repeating Characters 题解分析","url":"/2020/09/20/Leetcode-3-Longest-Substring-Without-Repeating-Characters-题解分析/"},{"title":"leetcode no.3","url":"/2015/04/15/Leetcode-No-3/"},{"title":"Linux 下 grep 命令的一点小技巧","url":"/2020/08/06/Linux-下-grep-命令的一点小技巧/"},{"title":"MFC 模态对话框","url":"/2014/12/24/MFC 模态对话框/"},{"title":"Maven实用小技巧","url":"/2020/02/16/Maven实用小技巧/"},{"title":"Number of 1 Bits","url":"/2015/03/11/Number-Of-1-Bits/"},{"title":"Leetcode 48 旋转图像(Rotate Image) 题解分析","url":"/2021/05/01/Leetcode-48-旋转图像-Rotate-Image-题解分析/"},{"title":"Path Sum","url":"/2015/01/04/Path-Sum/"},{"title":"Leetcode 160 相交链表(intersection-of-two-linked-lists) 题解分析","url":"/2021/01/10/Leetcode-160-相交链表-intersection-of-two-linked-lists-题解分析/"},{"title":"Redis_分布式锁","url":"/2019/12/10/Redis-Part-1/"},{"title":"Reverse Bits","url":"/2015/03/11/Reverse-Bits/"},{"title":"ambari-summary","url":"/2017/05/09/ambari-summary/"},{"title":"Reverse Integer","url":"/2015/03/13/Reverse-Integer/"},{"title":"two sum","url":"/2015/01/14/Two-Sum/"},{"title":"binary-watch","url":"/2016/09/29/binary-watch/"},{"title":"docker-mysql-cluster","url":"/2016/08/14/docker-mysql-cluster/"},{"title":"docker比一般多一点的初学者介绍","url":"/2020/03/08/docker比一般多一点的初学者介绍/"},{"title":"docker比一般多一点的初学者介绍三","url":"/2020/03/21/docker比一般多一点的初学者介绍三/"},{"title":"Leetcode 234 回文链表(Palindrome Linked List) 题解分析","url":"/2020/11/15/Leetcode-234-回文联表-Palindrome-Linked-List-题解分析/"},{"title":"docker比一般多一点的初学者介绍二","url":"/2020/03/15/docker比一般多一点的初学者介绍二/"},{"title":"docker使用中发现的echo命令的一个小技巧及其他","url":"/2020/03/29/echo命令的一个小技巧/"},{"title":"gogs使用webhook部署react单页应用","url":"/2020/02/22/gogs使用webhook部署react单页应用/"},{"title":"invert-binary-tree","url":"/2015/06/22/invert-binary-tree/"},{"title":"minimum-size-subarray-sum-209","url":"/2016/10/11/minimum-size-subarray-sum-209/"},{"title":"C++ 指针使用中的一个小问题","url":"/2014/12/23/my-new-post/"},{"title":"mybatis 的 $ 和 # 是有啥区别","url":"/2020/09/06/mybatis-的-和-是有啥区别/"},{"title":"mybatis 的缓存是怎么回事","url":"/2020/10/03/mybatis-的缓存是怎么回事/"},{"title":"openresty","url":"/2019/06/18/openresty/"},{"title":"pcre-intro-and-a-simple-package","url":"/2015/01/16/pcre-intro-and-a-simple-package/"},{"title":"php-abstract-class-and-interface","url":"/2016/11/10/php-abstract-class-and-interface/"},{"title":"rabbitmq-tips","url":"/2017/04/25/rabbitmq-tips/"},{"title":"redis数据结构介绍-第一部分 SDS,链表,字典","url":"/2019/12/26/redis数据结构介绍/"},{"title":"redis数据结构介绍三-第三部分 整数集合","url":"/2020/01/10/redis数据结构介绍三/"},{"title":"redis数据结构介绍二-第二部分 跳表","url":"/2020/01/04/redis数据结构介绍二/"},{"title":"redis数据结构介绍五-第五部分 对象","url":"/2020/01/20/redis数据结构介绍五/"},{"title":"redis数据结构介绍六 快表","url":"/2020/01/22/redis数据结构介绍六/"},{"title":"redis数据结构介绍四-第四部分 压缩表","url":"/2020/01/19/redis数据结构介绍四/"},{"title":"spark-little-tips","url":"/2017/03/28/spark-little-tips/"},{"title":"summary-ranges-228","url":"/2016/10/12/summary-ranges-228/"},{"title":"swoole-websocket-test","url":"/2016/07/13/swoole-websocket-test/"},{"title":"介绍一下 RocketMQ","url":"/2020/06/21/介绍一下-RocketMQ/"},{"title":"rust学习笔记-所有权二","url":"/2021/04/18/rust学习笔记-所有权二/"},{"title":"rust学习笔记-所有权一","url":"/2021/04/18/rust学习笔记/"},{"title":"《垃圾回收算法手册读书》笔记之整理算法","url":"/2021/03/07/《垃圾回收算法手册读书》笔记之整理算法/"},{"title":"从丁仲礼被美国制裁聊点啥","url":"/2020/12/20/从丁仲礼被美国制裁聊点啥/"},{"title":"关于公共交通再吐个槽","url":"/2021/03/21/关于公共交通再吐个槽/"},{"title":"周末我在老丈人家打了天小工","url":"/2020/08/16/周末我在老丈人家打了天小工/"},{"title":"在老丈人家的小工记三","url":"/2020/09/13/在老丈人家的小工记三/"},{"title":"在老丈人家的小工记五","url":"/2020/10/18/在老丈人家的小工记五/"},{"title":"在老丈人家的小工记四","url":"/2020/09/26/在老丈人家的小工记四/"},{"title":"寄生虫观后感","url":"/2020/03/01/寄生虫观后感/"},{"title":"我是如何走上跑步这条不归路的","url":"/2020/07/26/我是如何走上跑步这条不归路的/"},{"title":"聊聊 Dubbo 的 SPI","url":"/2020/05/31/聊聊-Dubbo-的-SPI/"},{"title":"聊聊 Dubbo 的 SPI 续之自适应拓展","url":"/2020/06/06/聊聊-Dubbo-的-SPI-续之自适应拓展/"},{"title":"从清华美院学姐聊聊我们身边的恶人","url":"/2020/11/29/从清华美院学姐聊聊我们身边的恶人/"},{"title":"聊聊 Java 的类加载机制一","url":"/2020/11/08/聊聊-Java-的类加载机制/"},{"title":"关于读书打卡与分享","url":"/2021/02/07/关于读书打卡与分享/"},{"title":"聊聊 Java 的 equals 和 hashCode 方法","url":"/2021/01/03/聊聊-Java-的-equals-和-hashCode-方法/"},{"title":"聊聊 mysql 的 MVCC 续篇","url":"/2020/05/02/聊聊-mysql-的-MVCC-续篇/"},{"title":"聊聊 Linux 下的 top 命令","url":"/2021/03/28/聊聊-Linux-下的-top-命令/"},{"title":"聊聊 Dubbo 的容错机制","url":"/2020/11/22/聊聊-Dubbo-的容错机制/"},{"title":"聊聊 dubbo 的线程池","url":"/2021/04/04/聊聊-dubbo-的线程池/"},{"title":"聊聊 mysql 的 MVCC 续续篇之锁分析","url":"/2020/05/10/聊聊-mysql-的-MVCC-续续篇之加锁分析/"},{"title":"聊聊 mysql 的 MVCC","url":"/2020/04/26/聊聊-mysql-的-MVCC/"},{"title":"聊聊Java中的单例模式","url":"/2019/12/21/聊聊Java中的单例模式/"},{"title":"聊聊一次 brew update 引发的血案","url":"/2020/06/13/聊聊一次-brew-update-引发的血案/"},{"title":"聊聊我刚学会的应用诊断方法","url":"/2020/05/22/聊聊我刚学会的应用诊断方法/"},{"title":"聊聊我理解的分布式事务","url":"/2020/05/17/聊聊我理解的分布式事务/"},{"title":"聊聊厦门旅游的好与不好","url":"/2021/04/11/聊聊厦门旅游的好与不好/"},{"title":"聊聊 redis 缓存的应用问题","url":"/2021/01/31/聊聊-redis-缓存的应用问题/"},{"title":"聊聊那些加塞狗","url":"/2021/01/17/聊聊那些加塞狗/"},{"title":"这周末我又在老丈人家打了天小工","url":"/2020/08/30/这周末我又在老丈人家打了天小工/"},{"title":"聊聊 mysql 索引的一些细节","url":"/2020/12/27/聊聊-mysql-索引的一些细节/"},{"title":"闲聊下乘公交的用户体验","url":"/2021/02/28/闲聊下乘公交的用户体验/"},{"title":"AQS篇二 之 Condition 浅析笔记","url":"/2021/02/21/AQS-之-Condition-浅析笔记/"},{"title":"Filter, Interceptor, Aop, 啥, 啥, 啥? 这些都是啥?","url":"/2020/08/22/Filter-Intercepter-Aop-啥-啥-啥-这些都是啥/"},{"title":"JVM源码分析之G1垃圾收集器分析一","url":"/2019/12/07/JVM-G1-Part-1/"},{"title":"redis系列介绍七-过期策略","url":"/2020/04/12/redis系列介绍七/"},{"title":"redis系列介绍八-淘汰策略","url":"/2020/04/18/redis系列介绍八/"},{"title":"聊一下 RocketMQ 的 NameServer 源码","url":"/2020/07/05/聊一下-RocketMQ-的-NameServer-源码/"},{"title":"聊聊 RocketMQ 的 Broker 源码","url":"/2020/07/19/聊聊-RocketMQ-的-Broker-源码/"},{"title":"聊一下 RocketMQ 的 DefaultMQPushConsumer 源码","url":"/2020/06/26/聊一下-RocketMQ-的-Consumer/"},{"title":"聊聊 Java 自带的那些*逆天*工具","url":"/2020/08/02/聊聊-Java-自带的那些逆天工具/"}] \ No newline at end of file +[{"title":"村上春树《1Q84》读后感","url":"/2019/12/18/1Q84读后感/"},{"title":"2019年终总结","url":"/2020/02/01/2019年终总结/"},{"title":"2020 年终总结","url":"/2021/03/31/2020-年终总结/"},{"title":"2020年中总结","url":"/2020/07/11/2020年中总结/"},{"title":"34_Search_for_a_Range","url":"/2016/08/14/34-Search-for-a-Range/"},{"title":"AQS篇一","url":"/2021/02/14/AQS篇一/"},{"title":"AbstractQueuedSynchronizer","url":"/2019/09/23/AbstractQueuedSynchronizer/"},{"title":"add-two-number","url":"/2015/04/14/Add-Two-Number/"},{"title":"Apollo 的 value 注解是怎么自动更新的","url":"/2020/11/01/Apollo-的-value-注解是怎么自动更新的/"},{"title":"Clone Graph Part I","url":"/2014/12/30/Clone-Graph-Part-I/"},{"title":"Comparator使用小记","url":"/2020/04/05/Comparator使用小记/"},{"title":"G1收集器概述","url":"/2020/02/09/G1收集器概述/"},{"title":"Leetcode 104 二叉树的最大深度(Maximum Depth of Binary Tree) 题解分析","url":"/2020/10/25/Leetcode-104-二叉树的最大深度-Maximum-Depth-of-Binary-Tree-题解分析/"},{"title":"Leetcode 105 从前序与中序遍历序列构造二叉树(Construct Binary Tree from Preorder and Inorder Traversal) 题解分析","url":"/2020/12/13/Leetcode-105-从前序与中序遍历序列构造二叉树-Construct-Binary-Tree-from-Preorder-and-Inorder-Traversal-题解分析/"},{"title":"Leetcode 121 买卖股票的最佳时机(Best Time to Buy and Sell Stock) 题解分析","url":"/2021/03/14/Leetcode-121-买卖股票的最佳时机-Best-Time-to-Buy-and-Sell-Stock-题解分析/"},{"title":"Leetcode 124 二叉树中的最大路径和(Binary Tree Maximum Path Sum) 题解分析","url":"/2021/01/24/Leetcode-124-二叉树中的最大路径和-Binary-Tree-Maximum-Path-Sum-题解分析/"},{"title":"Leetcode 155 最小栈(Min Stack) 题解分析","url":"/2020/12/06/Leetcode-155-最小栈-Min-Stack-题解分析/"},{"title":"Leetcode 160 相交链表(intersection-of-two-linked-lists) 题解分析","url":"/2021/01/10/Leetcode-160-相交链表-intersection-of-two-linked-lists-题解分析/"},{"title":"Leetcode 2 Add Two Numbers 题解分析","url":"/2020/10/11/Leetcode-2-Add-Two-Numbers-题解分析/"},{"title":"Leetcode 234 回文链表(Palindrome Linked List) 题解分析","url":"/2020/11/15/Leetcode-234-回文联表-Palindrome-Linked-List-题解分析/"},{"title":"Leetcode 3 Longest Substring Without Repeating Characters 题解分析","url":"/2020/09/20/Leetcode-3-Longest-Substring-Without-Repeating-Characters-题解分析/"},{"title":"Leetcode 48 旋转图像(Rotate Image) 题解分析","url":"/2021/05/01/Leetcode-48-旋转图像-Rotate-Image-题解分析/"},{"title":"leetcode no.3","url":"/2015/04/15/Leetcode-No-3/"},{"title":"Linux 下 grep 命令的一点小技巧","url":"/2020/08/06/Linux-下-grep-命令的一点小技巧/"},{"title":"MFC 模态对话框","url":"/2014/12/24/MFC 模态对话框/"},{"title":"Maven实用小技巧","url":"/2020/02/16/Maven实用小技巧/"},{"title":"Number of 1 Bits","url":"/2015/03/11/Number-Of-1-Bits/"},{"title":"Path Sum","url":"/2015/01/04/Path-Sum/"},{"title":"Redis_分布式锁","url":"/2019/12/10/Redis-Part-1/"},{"title":"Reverse Bits","url":"/2015/03/11/Reverse-Bits/"},{"title":"Reverse Integer","url":"/2015/03/13/Reverse-Integer/"},{"title":"two sum","url":"/2015/01/14/Two-Sum/"},{"title":"ambari-summary","url":"/2017/05/09/ambari-summary/"},{"title":"binary-watch","url":"/2016/09/29/binary-watch/"},{"title":"docker-mysql-cluster","url":"/2016/08/14/docker-mysql-cluster/"},{"title":"docker比一般多一点的初学者介绍","url":"/2020/03/08/docker比一般多一点的初学者介绍/"},{"title":"docker比一般多一点的初学者介绍三","url":"/2020/03/21/docker比一般多一点的初学者介绍三/"},{"title":"docker比一般多一点的初学者介绍二","url":"/2020/03/15/docker比一般多一点的初学者介绍二/"},{"title":"gogs使用webhook部署react单页应用","url":"/2020/02/22/gogs使用webhook部署react单页应用/"},{"title":"invert-binary-tree","url":"/2015/06/22/invert-binary-tree/"},{"title":"minimum-size-subarray-sum-209","url":"/2016/10/11/minimum-size-subarray-sum-209/"},{"title":"C++ 指针使用中的一个小问题","url":"/2014/12/23/my-new-post/"},{"title":"mybatis 的 $ 和 # 是有啥区别","url":"/2020/09/06/mybatis-的-和-是有啥区别/"},{"title":"mybatis 的缓存是怎么回事","url":"/2020/10/03/mybatis-的缓存是怎么回事/"},{"title":"openresty","url":"/2019/06/18/openresty/"},{"title":"pcre-intro-and-a-simple-package","url":"/2015/01/16/pcre-intro-and-a-simple-package/"},{"title":"php-abstract-class-and-interface","url":"/2016/11/10/php-abstract-class-and-interface/"},{"title":"docker使用中发现的echo命令的一个小技巧及其他","url":"/2020/03/29/echo命令的一个小技巧/"},{"title":"rabbitmq-tips","url":"/2017/04/25/rabbitmq-tips/"},{"title":"redis数据结构介绍-第一部分 SDS,链表,字典","url":"/2019/12/26/redis数据结构介绍/"},{"title":"redis数据结构介绍三-第三部分 整数集合","url":"/2020/01/10/redis数据结构介绍三/"},{"title":"redis数据结构介绍二-第二部分 跳表","url":"/2020/01/04/redis数据结构介绍二/"},{"title":"redis数据结构介绍五-第五部分 对象","url":"/2020/01/20/redis数据结构介绍五/"},{"title":"redis数据结构介绍六 快表","url":"/2020/01/22/redis数据结构介绍六/"},{"title":"redis数据结构介绍四-第四部分 压缩表","url":"/2020/01/19/redis数据结构介绍四/"},{"title":"rust学习笔记-所有权二","url":"/2021/04/18/rust学习笔记-所有权二/"},{"title":"rust学习笔记-所有权一","url":"/2021/04/18/rust学习笔记/"},{"title":"spark-little-tips","url":"/2017/03/28/spark-little-tips/"},{"title":"summary-ranges-228","url":"/2016/10/12/summary-ranges-228/"},{"title":"swoole-websocket-test","url":"/2016/07/13/swoole-websocket-test/"},{"title":"《垃圾回收算法手册读书》笔记之整理算法","url":"/2021/03/07/《垃圾回收算法手册读书》笔记之整理算法/"},{"title":"介绍一下 RocketMQ","url":"/2020/06/21/介绍一下-RocketMQ/"},{"title":"从丁仲礼被美国制裁聊点啥","url":"/2020/12/20/从丁仲礼被美国制裁聊点啥/"},{"title":"从清华美院学姐聊聊我们身边的恶人","url":"/2020/11/29/从清华美院学姐聊聊我们身边的恶人/"},{"title":"关于公共交通再吐个槽","url":"/2021/03/21/关于公共交通再吐个槽/"},{"title":"关于读书打卡与分享","url":"/2021/02/07/关于读书打卡与分享/"},{"title":"周末我在老丈人家打了天小工","url":"/2020/08/16/周末我在老丈人家打了天小工/"},{"title":"在老丈人家的小工记三","url":"/2020/09/13/在老丈人家的小工记三/"},{"title":"在老丈人家的小工记五","url":"/2020/10/18/在老丈人家的小工记五/"},{"title":"在老丈人家的小工记四","url":"/2020/09/26/在老丈人家的小工记四/"},{"title":"寄生虫观后感","url":"/2020/03/01/寄生虫观后感/"},{"title":"我是如何走上跑步这条不归路的","url":"/2020/07/26/我是如何走上跑步这条不归路的/"},{"title":"聊聊 Dubbo 的 SPI 续之自适应拓展","url":"/2020/06/06/聊聊-Dubbo-的-SPI-续之自适应拓展/"},{"title":"聊聊 Dubbo 的 SPI","url":"/2020/05/31/聊聊-Dubbo-的-SPI/"},{"title":"聊聊 Dubbo 的容错机制","url":"/2020/11/22/聊聊-Dubbo-的容错机制/"},{"title":"聊聊 Java 的 equals 和 hashCode 方法","url":"/2021/01/03/聊聊-Java-的-equals-和-hashCode-方法/"},{"title":"聊聊 Java 的类加载机制一","url":"/2020/11/08/聊聊-Java-的类加载机制/"},{"title":"聊聊 Linux 下的 top 命令","url":"/2021/03/28/聊聊-Linux-下的-top-命令/"},{"title":"聊聊 dubbo 的线程池","url":"/2021/04/04/聊聊-dubbo-的线程池/"},{"title":"聊聊 mysql 的 MVCC 续篇","url":"/2020/05/02/聊聊-mysql-的-MVCC-续篇/"},{"title":"聊聊 mysql 的 MVCC 续续篇之锁分析","url":"/2020/05/10/聊聊-mysql-的-MVCC-续续篇之加锁分析/"},{"title":"聊聊 mysql 的 MVCC","url":"/2020/04/26/聊聊-mysql-的-MVCC/"},{"title":"聊聊 mysql 索引的一些细节","url":"/2020/12/27/聊聊-mysql-索引的一些细节/"},{"title":"聊聊 redis 缓存的应用问题","url":"/2021/01/31/聊聊-redis-缓存的应用问题/"},{"title":"聊聊Java中的单例模式","url":"/2019/12/21/聊聊Java中的单例模式/"},{"title":"聊聊一次 brew update 引发的血案","url":"/2020/06/13/聊聊一次-brew-update-引发的血案/"},{"title":"聊聊厦门旅游的好与不好","url":"/2021/04/11/聊聊厦门旅游的好与不好/"},{"title":"聊聊我理解的分布式事务","url":"/2020/05/17/聊聊我理解的分布式事务/"},{"title":"聊聊给亲戚朋友的老电脑重装系统那些事儿","url":"/2021/05/09/聊聊给亲戚朋友的老电脑重装系统那些事儿/"},{"title":"聊聊那些加塞狗","url":"/2021/01/17/聊聊那些加塞狗/"},{"title":"这周末我又在老丈人家打了天小工","url":"/2020/08/30/这周末我又在老丈人家打了天小工/"},{"title":"闲聊下乘公交的用户体验","url":"/2021/02/28/闲聊下乘公交的用户体验/"},{"title":"聊聊我刚学会的应用诊断方法","url":"/2020/05/22/聊聊我刚学会的应用诊断方法/"},{"title":"AQS篇二 之 Condition 浅析笔记","url":"/2021/02/21/AQS-之-Condition-浅析笔记/"},{"title":"Filter, Interceptor, Aop, 啥, 啥, 啥? 这些都是啥?","url":"/2020/08/22/Filter-Intercepter-Aop-啥-啥-啥-这些都是啥/"},{"title":"JVM源码分析之G1垃圾收集器分析一","url":"/2019/12/07/JVM-G1-Part-1/"},{"title":"redis系列介绍七-过期策略","url":"/2020/04/12/redis系列介绍七/"},{"title":"redis系列介绍八-淘汰策略","url":"/2020/04/18/redis系列介绍八/"},{"title":"聊一下 RocketMQ 的 NameServer 源码","url":"/2020/07/05/聊一下-RocketMQ-的-NameServer-源码/"},{"title":"聊聊 RocketMQ 的 Broker 源码","url":"/2020/07/19/聊聊-RocketMQ-的-Broker-源码/"},{"title":"聊一下 RocketMQ 的 DefaultMQPushConsumer 源码","url":"/2020/06/26/聊一下-RocketMQ-的-Consumer/"},{"title":"聊聊 Java 自带的那些*逆天*工具","url":"/2020/08/02/聊聊-Java-自带的那些逆天工具/"}] \ No newline at end of file diff --git a/lib/pace/README.html b/lib/pace/README.html index 8dde226870..465a1c99fb 100644 --- a/lib/pace/README.html +++ b/lib/pace/README.html @@ -359,7 +359,7 @@ $ git pull
@@ -922,7 +935,7 @@ constexpr size_t DATA_ROLL_PTR_LEN - 201 + 205 tags
@@ -947,7 +960,7 @@ constexpr size_t DATA_ROLL_PTR_LEN
- +
diff --git a/page/12/index.html b/page/12/index.html index f44b72097b..abd91a06fc 100644 --- a/page/12/index.html +++ b/page/12/index.html @@ -200,6 +200,172 @@ +
+ + + + + +
+

+ + +

+ + +
+ + + + +
+ + +

很久以前,有位面试官问到,你知道 mysql 的事务隔离级别吗,“额 O__O …,不太清楚”,完了之后我就去网上找相关的文章,找到了这篇MySQL 四种事务隔离级的说明, 文章写得特别好,看了这个就懂了各个事务隔离级别都是啥,不过看了这个之后多思考一下的话还是会发现问题,这么神奇的事务隔离级别是怎么实现的呢

+

其中 innodb 的事务隔离用到了标题里说到的 mvcc,Multiversion concurrency control, 直译过来就是多版本并发控制,先不讲这个究竟是个啥,考虑下如果纯猜测,这个事务隔离级别应该会是怎么样实现呢,愚钝的我想了下,可以在事务开始的时候拷贝一个表,这个可以支持 RR 级别,RC 级别就不支持了,而且要是个非常大的表,想想就不可行

+

腆着脸说虽然这个不可行,但是思路是对的,具体实行起来需要做一系列(肥肠多)的改动,首先根据我的理解,其实这个拷贝一个表是变成拷贝一条记录,但是如果有多个事务,那就得拷贝多次,这个问题其实可以借助版本管理系统来解释,在用版本管理系统,git 之类的之前,很原始的可能是开发完一个功能后,就打个压缩包用时间等信息命名,然后如果后面要找回这个就直接用这个压缩包的就行了,后来有了 svn,git 中心式和分布式的版本管理系统,它的一个特点是粒度可以控制到文件和代码行级别,对应的我们的 mysql 事务是不是也可以从一开始预想的表级别细化到行的级别,可能之前很多人都了解过,数据库的一行记录除了我们用户自定义的字段,还有一些额外的字段,去源码data0type.h里捞一下

+
/* Precise data types for system columns and the length of those columns;
+NOTE: the values must run from 0 up in the order given! All codes must
+be less than 256 */
+#define DATA_ROW_ID 0     /* row id: a 48-bit integer */
+#define DATA_ROW_ID_LEN 6 /* stored length for row id */
+
+/** Transaction id: 6 bytes */
+constexpr size_t DATA_TRX_ID = 1;
+
+/** Transaction ID type size in bytes. */
+constexpr size_t DATA_TRX_ID_LEN = 6;
+
+/** Rollback data pointer: 7 bytes */
+constexpr size_t DATA_ROLL_PTR = 2;
+
+/** Rollback data pointer type size in bytes. */
+constexpr size_t DATA_ROLL_PTR_LEN = 7;
+ +

一个是 DATA_ROW_ID,这个是在数据没指定主键的时候会生成一个隐藏的,如果用户有指定主键就是主键了

+

一个是 DATA_TRX_ID,这个表示这条记录的事务 ID

+

还有一个是 DATA_ROLL_PTR 指向回滚段的指针

+

指向的回滚段其实就是我们常说的 undo log,这里面的具体结构就是个链表,在 mvcc 里会使用到这个,还有就是这个 DATA_TRX_ID,每条记录都记录了这个事务 ID,表示的是这条记录的当前值是被哪个事务修改的,下面就扯回事务了,我们知道 Read Uncommitted, 其实用不到隔离,直接读取当前值就好了,到了 Read Committed 级别,我们要让事务读取到提交过的值,mysql 使用了一个叫 read view 的玩意,它里面有这些值是我们需要注意的,

+

m_low_limit_id, 这个是 read view 创建时最大的活跃事务 id

+

m_up_limit_id, 这个是 read view 创建时最小的活跃事务 id

+

m_ids, 这个是 read view 创建时所有的活跃事务 id 数组

+

m_creator_trx_id 这个是当前记录的创建事务 id

+

判断事务的可见性主要的逻辑是这样,

+
    +
  1. 当记录的事务 id 小于最小活跃事务 id,说明是可见的,
  2. +
  3. 如果记录的事务 id 等于当前事务 id,说明是自己的更改,可见
  4. +
  5. 如果记录的事务 id 大于最大的活跃事务 id, 不可见
  6. +
  7. 如果记录的事务 id 介于 m_low_limit_idm_up_limit_id 之间,则要判断它是否在 m_ids 中,如果在,不可见,如果不在,表示已提交,可见
    具体的代码捞一下看看
    /** Check whether the changes by id are visible.
    +  @param[in]	id	transaction id to check against the view
    +  @param[in]	name	table name
    +  @return whether the view sees the modifications of id. */
    +  bool changes_visible(trx_id_t id, const table_name_t &name) const
    +      MY_ATTRIBUTE((warn_unused_result)) {
    +    ut_ad(id > 0);
    +
    +    if (id < m_up_limit_id || id == m_creator_trx_id) {
    +      return (true);
    +    }
    +
    +    check_trx_id_sanity(id, name);
    +
    +    if (id >= m_low_limit_id) {
    +      return (false);
    +
    +    } else if (m_ids.empty()) {
    +      return (true);
    +    }
    +
    +    const ids_t::value_type *p = m_ids.data();
    +
    +    return (!std::binary_search(p, p + m_ids.size(), id));
    +  }
    +剩下来一点是啥呢,就是 Read CommittedRepeated Read 也不一样,那前面说的 read view 都能支持吗,又是怎么支持呢,假如这个 read view 是在事务一开始就创建,那好像能支持的只是 RR 事务隔离级别,其实呢,这是通过创建 read view的时机,对于 RR 级别,就是在事务的第一个 select 语句是创建,对于 RC 级别,是在每个 select 语句执行前都是创建一次,那样就可以保证能读到所有已提交的数据
  8. +
+ + +
+ + + + + + +
+
+
+
+ + + + + + +
@@ -1614,121 +1780,6 @@ timelimit = config_cycle_slow_time_perc*1000000/server.hz/100; - - - - - -
-

- - -

- - -
- - - - -
- - -

运行第一个 Dockerfile

上一篇的 Dockerfile 我们停留在构建阶段,现在来把它跑起来

-
docker run -d -p 80 --name static_web nicksxs/static_web \
-nginx -g "daemon off;"
-

这里的-d表示以分离模型运行docker (detached),然后-p 是表示将容器的 80 端口开放给宿主机,然后容器名就叫 static_web,使用了我们上次构建的 static_web 镜像,后面的是让 nginx 在前台运行

可以看到返回了个容器 id,但是具体情况没出现,也没连上去,那我们想看看怎么访问在 Dockerfile 里写的静态页面,我们来看下docker 进程

发现为我们随机分配了一个宿主机的端口,32768,去服务器的防火墙把这个外网端口开一下,看看是不是符合我们的预期呢

好像不太对额,应该是 ubuntu 安装的 nginx 的默认工作目录不对,我们来进容器看看,再熟悉下命令docker exec -it 4792455ca2ed /bin/bash
记得容器 id 换成自己的,进入容器后得找找 nginx 的配置文件,通常在/etc/nginx,/usr/local/etc等目录下,然后找到我们的目录是在这

所以把刚才的内容复制过去再试试

目标达成,give me five✌️

-

第二个 Dockerfile

然后就想来动态一点的,毕竟写过 PHP,就来试试 PHP
再建一个目录叫 dynamic_web,里面创建 src 目录,放一个 index.php
内容是

-
<?php
-echo "Hello World!";
-

然后在 dynamic_web 目录下创建 Dockerfile,

-
FROM trafex/alpine-nginx-php7:latest
-COPY src/ /var/www/html
-EXPOSE 80
-

Dockerfile 虽然只有三行,不过要着重说明下,这个底包其实不是docker 官方的,有两点考虑,一点是官方的基本都是 php apache 的镜像,还有就是 alpine这个,截取一段中文介绍

-
-

Alpine 操作系统是一个面向安全的轻型 Linux 发行版。它不同于通常 Linux 发行版,Alpine 采用了 musl libc 和 busybox 以减小系统的体积和运行时资源消耗,但功能上比 busybox 又完善的多,因此得到开源社区越来越多的青睐。在保持瘦身的同时,Alpine 还提供了自己的包管理工具 apk,可以通过 https://pkgs.alpinelinux.org/packages 网站上查询包信息,也可以直接通过 apk 命令直接查询和安装各种软件。
Alpine 由非商业组织维护的,支持广泛场景的 Linux发行版,它特别为资深/重度Linux用户而优化,关注安全,性能和资源效能。Alpine 镜像可以适用于更多常用场景,并且是一个优秀的可以适用于生产的基础系统/环境。

-
-
-

Alpine Docker 镜像也继承了 Alpine Linux 发行版的这些优势。相比于其他 Docker 镜像,它的容量非常小,仅仅只有 5 MB 左右(对比 Ubuntu 系列镜像接近 200 MB),且拥有非常友好的包管理机制。官方镜像来自 docker-alpine 项目。

-
-
-

目前 Docker 官方已开始推荐使用 Alpine 替代之前的 Ubuntu 做为基础镜像环境。这样会带来多个好处。包括镜像下载速度加快,镜像安全性提高,主机之间的切换更方便,占用更少磁盘空间等。

-
-

一方面在没有镜像的情况下,拉取 docker 镜像还是比较费力的,第二个就是也能节省硬盘空间,所以目前有大部分的 docker 镜像都将 alpine 作为基础镜像了
然后再来构建下

这里还有个点,就是上面的那个镜像我们也是 EXPOSE 80端口,然后外部宿主机会随机映射一个端口,为了偷个懒,我们就直接指定外部端口了
docker run -d -p 80:80 dynamic_web打开浏览器发现访问不了,咋回事呢
因为我们没看trafex/alpine-nginx-php7:latest这个镜像说明,它内部的服务是 8080 端口的,所以我们映射的暴露端口应该是 8080,再用 docker run -d -p 80:8080 dynamic_web这个启动,

- - -
- - - - - - -
-
-
-
- - - - @@ -1838,7 +1889,7 @@ EXPOSE 80
@@ -1486,7 +1499,7 @@ location ~* - 201 + 205 tags
@@ -1511,7 +1524,7 @@ location ~*
- +
diff --git a/page/17/index.html b/page/17/index.html index 63c26fcbc8..6a93b6d00e 100644 --- a/page/17/index.html +++ b/page/17/index.html @@ -200,6 +200,104 @@ +
+ + + + + +
+

+ + +

+ + +
+ + + + +
+ + +

初识ambari

ambari是一个大数据平台的管理工具,包含了hadoop, yarn, hive, hbase, spark等大数据的基础架构和工具,简化了数据平台的搭建,之前只是在同事搭建好平台后的一些使用,这次有机会从头开始用ambari来搭建一个测试的数据平台,过程中也踩到不少坑,简单记录下。

+

简单过程

    +
  • 第一个坑
    在刚开始是按照官网的指南,用maven构建,因为GFW的原因,导致反复失败等待,也就是这个guide,因为对maven不熟悉导致有些按图索骥,浪费了很多时间,之后才知道可以直接加repo用yum安装,然而用yum安装马上就出现了第二个坑。
  • +
  • 第二个坑
    因为在线的repo还是因为网络原因很慢很慢,用proxychains勉强把ambari-server本身安装好了,ambari.repo将这个放进/etc/yum.repos.d/路径下,然后yum update && yum install ambari-server安装即可,如果有条件就用proxychains走下代理。
  • +
  • 第三步
    安装好ambari-server后先执行ambari-server setup做一些初始化设置,其中包含了JDK路径的设置,数据库设置,设置好就OK了,然后执行ambari-server start启动服务,这里有个小插曲,因为ambari-server涉及到这么多服务,所以管理控制监控之类的模块是必不可少的,这部分可以在ambari-server的web ui界面安装,也可以命令行提前安装,这部分被称为HDF Management Pack,运行```ambari-server install-mpack \
  • +
  • -mpack=http://public-repo-1.hortonworks.com/HDF/centos7/2.x/updates/2.1.4.0/tars/hdf_ambari_mp/hdf-ambari-mpack-2.1.4.0-5.tar.gz \
  • +
  • -purge \
  • +
  • -verbose```
    安装,当然这个压缩包可以下载之后指到本地路径安装,然后就可以重启ambari-server
  • +
+ + +
+ + + + + + +
+
+
+
+ + + + + + +
@@ -641,121 +739,6 @@ public: - - - -
- - - - - -
-

- - -

- - -
- - - - -
- - -

problem

Given an array of n positive integers and a positive integer s, find the minimal length of a subarray of which the sum ≥ s. If there isn’t one, return 0 instead.

-

For example, given the array [2,3,1,2,4,3] and s = 7,
the subarray [4,3] has the minimal length under the problem constraint.

-

题解

参考,滑动窗口,跟之前Data Structure课上的online算法有点像,链接

-

Code

class Solution {
-public:
-    int minSubArrayLen(int s, vector<int>& nums) {
-        int len = nums.size();
-        if(len == 0) return 0;
-        int minlen = INT_MAX;
-        int sum = 0;
-        
-        int left = 0;
-        int right = -1;
-        while(right < len)
-        {
-            while(sum < s && right < len)
-                sum += nums[++right];
-            if(sum >= s)
-            {
-                minlen = minlen < right - left + 1 ? minlen : right - left + 1;
-                sum -= nums[left++];
-            }
-        }
-        return minlen > len ? 0 : minlen;
-    }
-};
- - -
- - - - - - -
-
-
-
- - - - @@ -865,7 +848,7 @@ public:
- +
diff --git a/page/18/index.html b/page/18/index.html index 507b437b4d..8e24fa6c1a 100644 --- a/page/18/index.html +++ b/page/18/index.html @@ -200,6 +200,121 @@ +
+ + + + + +
+

+ + +

+ + +
+ + + + +
+ + +

problem

Given an array of n positive integers and a positive integer s, find the minimal length of a subarray of which the sum ≥ s. If there isn’t one, return 0 instead.

+

For example, given the array [2,3,1,2,4,3] and s = 7,
the subarray [4,3] has the minimal length under the problem constraint.

+

题解

参考,滑动窗口,跟之前Data Structure课上的online算法有点像,链接

+

Code

class Solution {
+public:
+    int minSubArrayLen(int s, vector<int>& nums) {
+        int len = nums.size();
+        if(len == 0) return 0;
+        int minlen = INT_MAX;
+        int sum = 0;
+        
+        int left = 0;
+        int right = -1;
+        while(right < len)
+        {
+            while(sum < s && right < len)
+                sum += nums[++right];
+            if(sum >= s)
+            {
+                minlen = minlen < right - left + 1 ? minlen : right - left + 1;
+                sum -= nums[left++];
+            }
+        }
+        return minlen > len ? 0 : minlen;
+    }
+};
+ + +
+ + + + + + +
+
+
+
+ + + + + + +
@@ -630,132 +745,6 @@ public: - - - -
- - - - - -
-

- - -

- - -
- - - - -
- - -

Invert a binary tree

-
     4
-   /   \
-  2     7
- / \   / \
-1   3 6   9
-
-

to

-
     4
-   /   \
-  7     2
- / \   / \
-9   6 3   1
-
-

Trivia:
This problem was inspired by this original tweet by Max Howell:

-
-

Google: 90% of our engineers use the software you wrote (Homebrew),
but you can’t invert a binary tree on a whiteboard so fuck off.

-
-
/**
- * Definition for a binary tree node.
- * struct TreeNode {
- *     int val;
- *     TreeNode *left;
- *     TreeNode *right;
- *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
- * };
- */
-class Solution {
-public:
-    TreeNode* invertTree(TreeNode* root) {
-        if(root == NULL) return root;
-        TreeNode* temp;
-        temp = invertTree(root->left);
-        root->left = invertTree(root->right);
-        root->right = temp;
-        return root;
-    }
-};
- -
- - - - - - -
-
-
-
- - - - @@ -865,7 +854,7 @@ public:
- +
diff --git a/page/19/index.html b/page/19/index.html index 837436d1f8..71fad00153 100644 --- a/page/19/index.html +++ b/page/19/index.html @@ -201,7 +201,7 @@
- +