forked from zhwei820/learn.lianglianglee.com
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
351 lines (344 loc) · 12.5 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
<!DOCTYPE html>
<!-- saved from url=(0046)https://kaiiiz.github.io/hexo-theme-book-demo/ -->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no">
<link rel="icon" href="/static/favicon.png">
<title>note-submit</title>
<!-- Spectre.css framework -->
<link rel="stylesheet" href="/static/index.css">
<!-- theme css & js -->
<meta name="generator" content="Hexo 4.2.0">
</head>
<body>
<div class="book-container">
<div class="book-sidebar">
<div class="book-brand">
<a href="/">
<img src="/static/favicon.png">
<span>技术文章摘抄</span>
</a>
</div>
<div class="book-menu uncollapsible">
<ul class="uncollapsible">
<li><a href="/" class="current-tab">首页</a></li>
</ul>
<ul class="uncollapsible">
<li><a href="../">上一级</a></li>
</ul>
<ul class="uncollapsible">
<li>
<a href="/PDF">PDF</a>
</li>
<li>
<a href="/专栏">专栏</a>
</li>
<li>
<a href="/恋爱必修课">恋爱必修课</a>
</li>
<li>
<a href="/文章">文章</a>
</li>
<li>
<a href="/极客时间">极客时间</a>
</li>
</ul>
</div>
</div>
<div class="sidebar-toggle" onclick="sidebar_toggle()" onmouseover="add_inner()" onmouseleave="remove_inner()">
<div class="sidebar-toggle-inner"></div>
</div>
<script>
function add_inner() {
let inner = document.querySelector('.sidebar-toggle-inner')
inner.classList.add('show')
}
function remove_inner() {
let inner = document.querySelector('.sidebar-toggle-inner')
inner.classList.remove('show')
}
function sidebar_toggle() {
let sidebar_toggle = document.querySelector('.sidebar-toggle')
let sidebar = document.querySelector('.book-sidebar')
let content = document.querySelector('.off-canvas-content')
if (sidebar_toggle.classList.contains('extend')) { // show
sidebar_toggle.classList.remove('extend')
sidebar.classList.remove('hide')
content.classList.remove('extend')
} else { // hide
sidebar_toggle.classList.add('extend')
sidebar.classList.add('hide')
content.classList.add('extend')
}
}
function open_sidebar() {
let sidebar = document.querySelector('.book-sidebar')
let overlay = document.querySelector('.off-canvas-overlay')
sidebar.classList.add('show')
overlay.classList.add('show')
}
function hide_canvas() {
let sidebar = document.querySelector('.book-sidebar')
let overlay = document.querySelector('.off-canvas-overlay')
sidebar.classList.remove('show')
overlay.classList.remove('show')
}
</script>
<div class="off-canvas-content">
<div class="columns">
<div class="column col-12 col-lg-12">
<div class="book-navbar">
<!-- For Responsive Layout -->
<header class="navbar">
<section class="navbar-section">
<a onclick="open_sidebar()">
<i class="icon icon-menu"></i>
</a>
</section>
</header>
</div>
<div class="book-content" style="max-width: 960px; margin: 0 auto;
overflow-x: auto;
overflow-y: hidden;">
<div class="book-post">
<p id="tip" align="center"></p>
<div><h1> 目录</h1>
<ul>
<li><a href = '/PDF'>PDF</a> </li>
<ul>
</ul>
<li><a href = '/专栏'>专栏</a> </li>
<ul>
<li><a href = '/专栏/12步通关求职面试-完'>12步通关求职面试-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/22 讲通关 Go 语言-完'>22 讲通关 Go 语言-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/24讲吃透分布式数据库-完'>24讲吃透分布式数据库-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/300分钟吃透分布式缓存-完'>300分钟吃透分布式缓存-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/CNCF X 阿里巴巴云原生技术公开课'>CNCF X 阿里巴巴云原生技术公开课</a> </li>
<ul>
</ul>
<li><a href = '/专栏/DDD 微服务落地实战'>DDD 微服务落地实战</a> </li>
<ul>
</ul>
<li><a href = '/专栏/DDD实战课'>DDD实战课</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Dubbo源码解读与实战-完'>Dubbo源码解读与实战-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/ElasticSearch知识体系详解'>ElasticSearch知识体系详解</a> </li>
<ul>
</ul>
<li><a href = '/专栏/JVM 核心技术 32 讲(完)'>JVM 核心技术 32 讲(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Java 业务开发常见错误 100 例'>Java 业务开发常见错误 100 例</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Java 并发编程 78 讲-完'>Java 并发编程 78 讲-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Java 性能优化实战-完'>Java 性能优化实战-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Java并发编程实战'>Java并发编程实战</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Kafka核心技术与实战'>Kafka核心技术与实战</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Kubernetes 从上手到实践'>Kubernetes 从上手到实践</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Kubernetes 实践入门指南'>Kubernetes 实践入门指南</a> </li>
<ul>
</ul>
<li><a href = '/专栏/MySQL实战45讲'>MySQL实战45讲</a> </li>
<ul>
</ul>
<li><a href = '/专栏/MySQL实战宝典'>MySQL实战宝典</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Netty 核心原理剖析与 RPC 实践-完'>Netty 核心原理剖析与 RPC 实践-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/OKR组织敏捷目标和绩效管理-完'>OKR组织敏捷目标和绩效管理-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Redis 核心原理与实战'>Redis 核心原理与实战</a> </li>
<ul>
</ul>
<li><a href = '/专栏/RocketMQ 实战与进阶(完)'>RocketMQ 实战与进阶(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Serverless 技术公开课(完)'>Serverless 技术公开课(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/ShardingSphere 核心原理精讲-完'>ShardingSphere 核心原理精讲-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Spring Boot 实战开发'>Spring Boot 实战开发</a> </li>
<ul>
</ul>
<li><a href = '/专栏/Spring Security 详解与实操'>Spring Security 详解与实操</a> </li>
<ul>
</ul>
<li><a href = '/专栏/SpringCloud微服务实战(完)'>SpringCloud微服务实战(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/ZooKeeper源码分析与实战-完'>ZooKeeper源码分析与实战-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/互联网消费金融高并发领域设计'>互联网消费金融高并发领域设计</a> </li>
<ul>
</ul>
<li><a href = '/专栏/全解网络协议'>全解网络协议</a> </li>
<ul>
</ul>
<li><a href = '/专栏/分布式中间件实践之路(完)'>分布式中间件实践之路(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/分布式技术原理与实战45讲-完'>分布式技术原理与实战45讲-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/分布式链路追踪实战-完'>分布式链路追踪实战-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/前端工程化精讲-完'>前端工程化精讲-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/容器实战高手课'>容器实战高手课</a> </li>
<ul>
</ul>
<li><a href = '/专栏/左耳听风'>左耳听风</a> </li>
<ul>
</ul>
<li><a href = '/专栏/微服务质量保障 20 讲-完'>微服务质量保障 20 讲-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/架构设计面试精讲'>架构设计面试精讲</a> </li>
<ul>
</ul>
<li><a href = '/专栏/案例上手 Spring Boot WebFlux(完)'>案例上手 Spring Boot WebFlux(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/消息队列高手课'>消息队列高手课</a> </li>
<ul>
</ul>
<li><a href = '/专栏/深入剖析 MyBatis 核心原理-完'>深入剖析 MyBatis 核心原理-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/深入拆解Java虚拟机'>深入拆解Java虚拟机</a> </li>
<ul>
</ul>
<li><a href = '/专栏/深入浅出 Docker 技术栈实践课(完)'>深入浅出 Docker 技术栈实践课(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/深入浅出 Java 虚拟机-完'>深入浅出 Java 虚拟机-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/深入浅出计算机组成原理'>深入浅出计算机组成原理</a> </li>
<ul>
</ul>
<li><a href = '/专栏/深入理解 Sentinel(完)'>深入理解 Sentinel(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/由浅入深吃透 Docker-完'>由浅入深吃透 Docker-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/白话设计模式 28 讲(完)'>白话设计模式 28 讲(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/程序员的数学课'>程序员的数学课</a> </li>
<ul>
</ul>
<li><a href = '/专栏/说透性能测试'>说透性能测试</a> </li>
<ul>
</ul>
<li><a href = '/专栏/软件工程之美'>软件工程之美</a> </li>
<ul>
</ul>
<li><a href = '/专栏/透视HTTP协议'>透视HTTP协议</a> </li>
<ul>
</ul>
<li><a href = '/专栏/重学操作系统-完'>重学操作系统-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/重学数据结构与算法-完'>重学数据结构与算法-完</a> </li>
<ul>
</ul>
<li><a href = '/专栏/领域驱动设计实践(完)'>领域驱动设计实践(完)</a> </li>
<ul>
</ul>
<li><a href = '/专栏/高并发系统设计40问'>高并发系统设计40问</a> </li>
<ul>
</ul>
</ul>
<li><a href = '/恋爱必修课'>恋爱必修课</a> </li>
<ul>
</ul>
<li><a href = '/文章'>文章</a> </li>
<ul>
</ul>
<li><a href = '/极客时间'>极客时间</a> </li>
<ul>
</ul>
</ul>
</div>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<a class="off-canvas-overlay" onclick="hide_canvas()"></a>
</div>
<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v652eace1692a40cfa3763df669d7439c1639079717194" integrity="sha512-Gi7xpJR8tSkrpF7aordPZQlW2DLtzUlZcumS8dMQjwDHEnw9I7ZLyiOj/6tZStRBGtGgN6ceN6cMH8z7etPGlw==" data-cf-beacon='{"rayId":"70996b2f083d3d60","version":"2021.12.0","r":1,"token":"1f5d475227ce4f0089a7cff1ab17c0f5","si":100}' crossorigin="anonymous"></script>
</body>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-NPSEEVD756"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', 'G-NPSEEVD756');
var path = window.location.pathname
var cookie = getCookie("lastPath");
console.log(path)
if (path.replace("/", "") === "") {
if (cookie.replace("/", "") !== "") {
console.log(cookie)
document.getElementById("tip").innerHTML = "<a href='" + cookie + "'>跳转到上次进度</a>"
}
} else {
setCookie("lastPath", path)
}
function setCookie(cname, cvalue) {
var d = new Date();
d.setTime(d.getTime() + (180 * 24 * 60 * 60 * 1000));
var expires = "expires=" + d.toGMTString();
document.cookie = cname + "=" + cvalue + "; " + expires + ";path = /";
}
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i].trim();
if (c.indexOf(name) === 0) return c.substring(name.length, c.length);
}
return "";
}
</script>
</html>