-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
1505 lines (968 loc) · 157 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
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge" >
<link rel="dns-prefetch" href="http://zhangzeshuai.com">
<title>行者无疆</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="description" content="纵使前方荆棘满布,我也会义无反顾">
<meta property="og:type" content="website">
<meta property="og:title" content="行者无疆">
<meta property="og:url" content="http://zhangzeshuai.com/index.html">
<meta property="og:site_name" content="行者无疆">
<meta property="og:description" content="纵使前方荆棘满布,我也会义无反顾">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="行者无疆">
<meta name="twitter:description" content="纵使前方荆棘满布,我也会义无反顾">
<link rel="alternative" href="/atom.xml" title="行者无疆" type="application/atom+xml">
<link rel="icon" href="/favicon.png">
<link rel="stylesheet" type="text/css" href="/./main.507b3a.css">
<style type="text/css">
#container.show {
background: linear-gradient(200deg,#a0cfe4,#e8c37e);
}
</style>
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?80167cd95245b4c1012830eeb0d9ba15";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
</head>
<body>
<div id="container" q-class="show:isCtnShow">
<canvas id="anm-canvas" class="anm-canvas"></canvas>
<div class="left-col" q-class="show:isShow">
<div class="overlay" style="background: #4d4d4d"></div>
<div class="intrude-less">
<header id="header" class="inner">
<a href="" class="profilepic">
<img src="/logo.jpeg" class="js-avatar">
</a>
<hgroup>
<h1 class="header-author"><a href="">行者无疆</a></h1>
</hgroup>
<p class="header-subtitle">纵使前方荆棘满布,我也会义无反顾</p>
<nav class="header-menu">
<ul>
<li><a href="/">home</a></li>
<li><a href="/archives">archives</a></li>
<li><a href="/about">about</a></li>
</ul>
</nav>
<nav class="header-smart-menu">
<a q-on="click: openSlider(e, 'innerArchive')" href="javascript:void(0)">所有文章</a>
<a q-on="click: openSlider(e, 'friends')" href="javascript:void(0)">友链</a>
</nav>
<nav class="header-nav">
<div class="social">
<a class="github" target="_blank" href="https://github.com/SuperKevinZhang" title="github"><i class="icon-github"></i></a>
<a class="zhihu" target="_blank" href="https://www.zhihu.com/people/kevinzhang007/activities" title="zhihu"><i class="icon-zhihu"></i></a>
<a class="mail" target="_blank" href="mailto:[email protected]" title="mail"><i class="icon-mail"></i></a>
</div>
</nav>
</header>
</div>
</div>
<div class="mid-col" q-class="show:isShow,hide:isShow|isFalse">
<nav id="mobile-nav">
<div class="overlay js-overlay" style="background: #4d4d4d"></div>
<div class="btnctn js-mobile-btnctn">
<div class="slider-trigger list" q-on="click: openSlider(e)"><i class="icon icon-sort"></i></div>
</div>
<div class="intrude-less">
<header id="header" class="inner">
<div class="profilepic">
<img src="/logo.jpeg" class="js-avatar">
</div>
<hgroup>
<h1 class="header-author js-header-author">行者无疆</h1>
</hgroup>
<p class="header-subtitle"><i class="icon icon-quo-left"></i>纵使前方荆棘满布,我也会义无反顾<i class="icon icon-quo-right"></i></p>
<nav class="header-nav">
<div class="social">
<a class="github" target="_blank" href="https://github.com/SuperKevinZhang" title="github"><i class="icon-github"></i></a>
<a class="zhihu" target="_blank" href="https://www.zhihu.com/people/kevinzhang007/activities" title="zhihu"><i class="icon-zhihu"></i></a>
<a class="mail" target="_blank" href="mailto:[email protected]" title="mail"><i class="icon-mail"></i></a>
</div>
</nav>
<nav class="header-menu js-header-menu">
<ul style="width: 70%">
<li style="width: 33.333333333333336%"><a href="/">home</a></li>
<li style="width: 33.333333333333336%"><a href="/archives">archives</a></li>
<li style="width: 33.333333333333336%"><a href="/about">about</a></li>
</ul>
</nav>
</header>
</div>
<div class="mobile-mask" style="display:none" q-show="isShow"></div>
</nav>
<div id="wrapper" class="body-wrap">
<div class="menu-l">
<div class="canvas-wrap">
<canvas data-colors="#eaeaea" data-sectionHeight="100" data-contentId="js-content" id="myCanvas1" class="anm-canvas"></canvas>
</div>
<div id="js-content" class="content-ll">
<article id="post-sqlservertranslock" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/11/12/sqlservertranslock/">SQL Server线程事务与死锁的一次实例分析</a>
</h1>
<a href="/2018/11/12/sqlservertranslock/" class="archive-article-date">
<time datetime="2018-11-12T06:52:42.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-11-12</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<h3 id="背景"><a href="#背景" class="headerlink" title="背景"></a>背景</h3><p>故事是这样的,在一个系统试运行阶段,发现了一个数据库死锁的异常.具体的错误是 :</p>
<p> <font color="red">“XX写入异!事务与另一个进程锁死在锁|通信缓冲区资源上,并且一杯选做死锁牺牲品”</font></p>
<p>按字面的意思理解也很简单.多个线程同时操作数据库死锁导致了问题.这里需要了解到非常多数据库相关锁的知识,具体请看有些人写的非常好的文档:</p>
<p><a href="!https://github.com/CyC2018/CS-Notes/blob/master/notes/%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E7%BB%9F%E5%8E%9F%E7%90%86.md#%E4%B8%80%E4%BA%8B%E5%8A%A1">数据库系统原理</a></p>
<p><a href="https://www.cnblogs.com/edisonchou/p/6129717.html" target="_blank" rel="external">Microsoft SQL Server中的事务与并发详解</a></p>
<p>两篇文章稍微有些长,但是希望大家也读一下,否则对数据库锁不了解,很难解决死锁的问题</p>
<a class="article-more-a" href="/2018/11/12/sqlservertranslock/#more">more >></a>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color3">死锁</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color3">事务</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color3">并发</a>
</li>
</ul>
</div>
<p class="article-more-link">
<a class="article-more-a" href="/2018/11/12/sqlservertranslock/">展开全文 >></a>
</p>
<div class="clearfix"></div>
</div>
</div>
</article>
<aside class="wrap-side-operation">
<div class="mod-side-operation">
<div class="jump-container" id="js-jump-container" style="display:none;">
<a href="javascript:void(0)" class="mod-side-operation__jump-to-top">
<i class="icon-font icon-back"></i>
</a>
<div id="js-jump-plan-container" class="jump-plan-container" style="top: -11px;">
<i class="icon-font icon-plane jump-plane"></i>
</div>
</div>
</div>
</aside>
<article id="post-AbstractFactoryPattern" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/09/27/AbstractFactoryPattern/">设计模式在项目架构中的最佳实践 -- 抽象工厂模式</a>
</h1>
<a href="/2018/09/27/AbstractFactoryPattern/" class="archive-article-date">
<time datetime="2018-09-27T10:49:03.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-09-27</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<h4 id="项目背景"><a href="#项目背景" class="headerlink" title="项目背景:"></a>项目背景:</h4><p> 项目是为一家第三方物流公司做的仓储管理系统(WMS),由于国内电商的盛行,第三方物流仓储也迎来了大的发展,老旧系统在仓储利用率和操作效率上需要提高,且老旧系统在应对新业务方面处理能力不足.所以系统需要在这几个方面进行改进,本文只抽取对新业务处理的部分问题进行讨论设计模式的最佳实践;</p>
<h4 id="问题描述"><a href="#问题描述" class="headerlink" title="问题描述:"></a>问题描述:</h4><p> 电商第三方仓库,需要和大量的快递公司进行打交道,需要通过call接口的形式去不同的快递公司获取快递单号,又需要根据不同的快递公司进行打印相应的运单格式.且不确定哪些快递公司.比如A客户租赁的仓库只发顺丰的快递,B客户可以发中通申通的快递,由于仓库分布在全国各地,将来谈的不同客户可能要求各种稀奇古怪等不确定的快递公司;所以架构在处理此处业务的时候,必需保证足够的灵魂;</p>
<a class="article-more-a" href="/2018/09/27/AbstractFactoryPattern/#more">more >></a>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color5">设计模式</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color5">抽象工厂</a>
</li>
</ul>
</div>
<p class="article-more-link">
<a class="article-more-a" href="/2018/09/27/AbstractFactoryPattern/">展开全文 >></a>
</p>
<div class="clearfix"></div>
</div>
</div>
</article>
<aside class="wrap-side-operation">
<div class="mod-side-operation">
<div class="jump-container" id="js-jump-container" style="display:none;">
<a href="javascript:void(0)" class="mod-side-operation__jump-to-top">
<i class="icon-font icon-back"></i>
</a>
<div id="js-jump-plan-container" class="jump-plan-container" style="top: -11px;">
<i class="icon-font icon-plane jump-plane"></i>
</div>
</div>
</div>
</aside>
<article id="post-Design-Pattern-Adapter" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/09/25/Design-Pattern-Adapter/">设计模式在项目架构中的最佳实践 -- 生成器模式/适配器模式</a>
</h1>
<a href="/2018/09/25/Design-Pattern-Adapter/" class="archive-article-date">
<time datetime="2018-09-25T11:10:18.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-09-25</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<p> 一年多来,做了几个项目,虽然没有什么技术和业务难度,但是也不能白白浪费了自己一年的光景,除了技术也业务外,总有一些知识值得我们去总结和学习;</p>
<p> 这么些年埋头于苦干,很少抽出时间来整理提高自己的综合水平.发现了身的不足够,开始重新复习一下大学里的那些理论知识.此时的学习,和当时相比,总有一种醍醐灌顶的感觉;今天就总设计模式这个方面来分析总结一下最近做过的一个项目;</p>
<p> 项目的内容和范围比较简单,一家国际物流公司,需要将中国产生的物流订单数据,安装规定的格式(xml)与Global项目进行交互,项目分两个部分,一个是业务网关,负责全球数据接收和分发;一个是转换器功能的系统,将国内的数据转换为符合Schema标准文件发送到业务网关,接收网关发送来的数据并转换为国内标准入库;</p>
<p> 项目的要求,及时性,可靠性,准确性,可追溯性,要求比较高,但由于与此次内容无关,我们这里不做讨论,将来有机会写专门的文章来讨论;另一方要求比较高的,就是可维护性,可变更性,由于系统可能使用10年以上,加上电商等各种业务模式带来的业务创新,对系统的灵活性要求也比较,为了面对这些不确定的业务,必须有一个良好的系统架构来应对这些问题;</p>
<a class="article-more-a" href="/2018/09/25/Design-Pattern-Adapter/#more">more >></a>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color5">设计模式</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color1">生成器模式</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color1">适配器模式</a>
</li>
</ul>
</div>
<p class="article-more-link">
<a class="article-more-a" href="/2018/09/25/Design-Pattern-Adapter/">展开全文 >></a>
</p>
<div class="clearfix"></div>
</div>
</div>
</article>
<aside class="wrap-side-operation">
<div class="mod-side-operation">
<div class="jump-container" id="js-jump-container" style="display:none;">
<a href="javascript:void(0)" class="mod-side-operation__jump-to-top">
<i class="icon-font icon-back"></i>
</a>
<div id="js-jump-plan-container" class="jump-plan-container" style="top: -11px;">
<i class="icon-font icon-plane jump-plane"></i>
</div>
</div>
</div>
</aside>
<article id="post-springAnnotation" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/09/11/springAnnotation/">Spring Boot 常用注解 脑图版</a>
</h1>
<a href="/2018/09/11/springAnnotation/" class="archive-article-date">
<time datetime="2018-09-11T05:47:39.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-09-11</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<p>Spring Boot 常用注解 脑图版</p>
<p>学习Spring Boot过程的笔记,通过思维导图整理自己的思路,更符合大脑记忆;在线版可以看到注释及代码实现;</p>
<p>在线脑图地址: <a href="http://naotu.baidu.com/file/1d55dd8aa03cd9f7b2aa835891675526" target="_blank" rel="external">http://naotu.baidu.com/file/1d55dd8aa03cd9f7b2aa835891675526</a></p>
<p><img src="https://raw.githubusercontent.com/SuperKevinZhang/SuperKevinZhang.github.io/master/image/SpringAnnotaition.png" alt="Spring Boot 常用注解"></p>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color2">Spring Boot</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color3">注解</a>
</li>
</ul>
</div>
<p class="article-more-link">
<a class="article-more-a" href="/2018/09/11/springAnnotation/">展开全文 >></a>
</p>
<div class="clearfix"></div>
</div>
</div>
</article>
<aside class="wrap-side-operation">
<div class="mod-side-operation">
<div class="jump-container" id="js-jump-container" style="display:none;">
<a href="javascript:void(0)" class="mod-side-operation__jump-to-top">
<i class="icon-font icon-back"></i>
</a>
<div id="js-jump-plan-container" class="jump-plan-container" style="top: -11px;">
<i class="icon-font icon-plane jump-plane"></i>
</div>
</div>
</div>
</aside>
<article id="post-redis" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/08/30/redis/">redis 数据类型及应用场景分析</a>
</h1>
<a href="/2018/08/30/redis/" class="archive-article-date">
<time datetime="2018-08-30T10:49:04.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-08-30</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<pre><code>Redis 的网上学习资料很多,这篇文章整理多篇文章,结合自己的项目经验,以脑图的形势展现给大家以供学习;
</code></pre><h4 id="主要内容包括"><a href="#主要内容包括" class="headerlink" title="主要内容包括:"></a>主要内容包括:</h4><hr>
<ul>
<li>Redis五种数据类型解析</li>
<li>实际应用场景分析</li>
<li>Master@Slave 主从复制(待完成)</li>
<li>持久化</li>
<li>与其他内存数据库的比较</li>
</ul>
<a class="article-more-a" href="/2018/08/30/redis/#more">more >></a>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color1">redis</a>
</li>
</ul>
</div>
<p class="article-more-link">
<a class="article-more-a" href="/2018/08/30/redis/">展开全文 >></a>
</p>
<div class="clearfix"></div>
</div>
</div>
</article>
<aside class="wrap-side-operation">
<div class="mod-side-operation">
<div class="jump-container" id="js-jump-container" style="display:none;">
<a href="javascript:void(0)" class="mod-side-operation__jump-to-top">
<i class="icon-font icon-back"></i>
</a>
<div id="js-jump-plan-container" class="jump-plan-container" style="top: -11px;">
<i class="icon-font icon-plane jump-plane"></i>
</div>
</div>
</div>
</aside>
<article id="post-index-merge" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/08/20/index-merge/">数据库优化 index merge 的理解</a>
</h1>
<a href="/2018/08/20/index-merge/" class="archive-article-date">
<time datetime="2018-08-20T08:48:01.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-08-20</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<h5 id="越学习-越不知道写些什么-总觉得自己知道的太少了"><a href="#越学习-越不知道写些什么-总觉得自己知道的太少了" class="headerlink" title="越学习,越不知道写些什么,总觉得自己知道的太少了;"></a>越学习,越不知道写些什么,总觉得自己知道的太少了;</h5><p>今天上班的路上看到脉脉上的帖子(暴露我上班时间了),在讨论一个索引的问题,</p>
<p><img src="https://github.com/SuperKevinZhang/SuperKevinZhang.github.io/blob/master/image/%E8%81%8C%E8%A8%80%E6%88%AA%E5%9B%BE20180820.jpg?raw=true" alt="截图"></p>
<p>自认为对索引还比较熟悉,专门抽时间验证了一下各位的说法.记录下来用来加深理解;</p>
<p>先说说对于这段sql大家的理解:</p>
<ul>
<li><p>不用索引</p>
</li>
<li><p>只用一个索引</p>
</li>
<li><p>有人理解为联合索引,联合索引全表扫描</p>
</li>
<li><p>or 只用一个索引,and走index merge</p>
<p></p>
</li>
</ul>
<p>先说说我自己为做动手前的想法;</p>
<ul>
<li><p>面试官没确定数据库类型(比如是mysql还是sql server,Oracle)和版本(mysql的各个版本差别还是比较大的),面试者也没提出来是那种类型和版本,这里面每一个问题都可能答案不一样;</p>
</li>
<li><p>面试官没说吗用的那种索引,是分别用两个索引,还是聚合索引;</p>
</li>
<li><p>自己认为应该都用得到索引,如果用不到索引,那优化引擎也做的太差了;</p>
<a class="article-more-a" href="/2018/08/20/index-merge/#more">more >></a>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color4">数据库</a>
</li>
</ul>
</div>
<p class="article-more-link">
<a class="article-more-a" href="/2018/08/20/index-merge/">展开全文 >></a>
</p>
<div class="clearfix"></div>
</div>
</div>
</article>
<aside class="wrap-side-operation">
<div class="mod-side-operation">
<div class="jump-container" id="js-jump-container" style="display:none;">
<a href="javascript:void(0)" class="mod-side-operation__jump-to-top">
<i class="icon-font icon-back"></i>
</a>
<div id="js-jump-plan-container" class="jump-plan-container" style="top: -11px;">
<i class="icon-font icon-plane jump-plane"></i>
</div>
</div>
</div>
</aside>
<article id="post-Javascript-closure" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/05/31/Javascript-closure/">JavaScript 关于闭包的理解(文章未完成)</a>
</h1>
<a href="/2018/05/31/Javascript-closure/" class="archive-article-date">
<time datetime="2018-05-31T08:13:57.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-05-31</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<pre><code>闭包这个文章,很早就像写,由于自己理解的不透彻,一直不敢写.原计划5月31号写的文章,7月份才完成,由于项目忙和自己的偷懒,一直想看的Javascript权威指南,断断续续的看了很久,也只是挑自己感兴趣的看些.不想学习,总是有各种诱惑和理由;
</code></pre><p> 我也尝试着用更清晰简洁的方式来写问题,学过了很多理论,在没有实践的支持下,记忆不到半年就忘记的差不多了.这次借鉴5W1H的方法来写这篇文字试试;</p>
<pre><code>了解闭包,我们从以下这5个方面开始;
</code></pre><p>1:闭包的定义</p>
<p>2:为什么会出现闭包</p>
<p>3:闭包解决了哪些问题</p>
<p>4:闭包带来了哪些问题</p>
<p>5:理解闭包需要了解的哪些知识</p>
<a class="article-more-a" href="/2018/05/31/Javascript-closure/#more">more >></a>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color1">JavaScript</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color3">闭包</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color4">作用域</a>
</li>
</ul>
</div>
<p class="article-more-link">
<a class="article-more-a" href="/2018/05/31/Javascript-closure/">展开全文 >></a>
</p>
<div class="clearfix"></div>
</div>
</div>
</article>
<aside class="wrap-side-operation">
<div class="mod-side-operation">
<div class="jump-container" id="js-jump-container" style="display:none;">
<a href="javascript:void(0)" class="mod-side-operation__jump-to-top">
<i class="icon-font icon-back"></i>
</a>
<div id="js-jump-plan-container" class="jump-plan-container" style="top: -11px;">
<i class="icon-font icon-plane jump-plane"></i>
</div>
</div>
</div>
</aside>
<article id="post-es6-study1" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/04/28/es6-study1/">es6学习注意事项</a>
</h1>
<a href="/2018/04/28/es6-study1/" class="archive-article-date">
<time datetime="2018-04-28T03:27:03.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-04-28</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<pre><code>ES6 简介:
ES6 是 ECMAScript 6简称,也就是新一代的Javascript标准,对原有的Javascript进行了颠覆性的改革,目标是解决Javascript的很多遗留问题,使其可以编写复杂的应用程序,代码可读性也更好,更接近面向对象的思想,与java.C#语法更接近;
</code></pre><p> <strong><a href="http://babeljs.io/" target="_blank" rel="external">Babel</a>:</strong> 由于不是所有的浏览器都支持ES6语法,所以就有了Bable转码器,开发ES6程序基本上必不可少的工具,详细的配置大家去网上搜索,我们这里主要讲 ES6学习中的一些思路;</p>
<a class="article-more-a" href="/2018/04/28/es6-study1/#more">more >></a>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color4">es6</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color1">Javascript</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color1">ECMAScript</a>
</li>
</ul>
</div>
<p class="article-more-link">
<a class="article-more-a" href="/2018/04/28/es6-study1/">展开全文 >></a>
</p>
<div class="clearfix"></div>
</div>
</div>
</article>
<aside class="wrap-side-operation">
<div class="mod-side-operation">
<div class="jump-container" id="js-jump-container" style="display:none;">
<a href="javascript:void(0)" class="mod-side-operation__jump-to-top">
<i class="icon-font icon-back"></i>
</a>
<div id="js-jump-plan-container" class="jump-plan-container" style="top: -11px;">
<i class="icon-font icon-plane jump-plane"></i>
</div>
</div>
</div>
</aside>
<article id="post-flutterguid" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/04/13/flutterguid/">当React Native 遇上 Flutter</a>
</h1>
<a href="/2018/04/13/flutterguid/" class="archive-article-date">
<time datetime="2018-04-13T10:15:00.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-04-13</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<pre><code>最近做了两个React Native(以后简称RN)的项目,重新Review一下相关的项目代码,期望下次使用的时候可以有更好的结构,更好的规范和约束已帮助大家减少bug,提高开发效率;
在做了一些原生Android开发,iOS开发和基于Cordova的混合开发之后,对React Native的开发还算比较满意,他解决了原生开发工作量大的问题,也解决了混合开发效率比较低,特别是低端Android卡顿的问题;但也有些不满意的地方,比如ListView渲染有内存泄露,替换的解决方案FlatList又渲染过慢,低端机卡顿,同时升级困难,有时候升级会牵涉到很多改动,如果改动的原生代码,升级更麻烦,同时RN的安装环境也异常复杂,安装好一个可以真机调试的环境有时候一天都搞不定;
正在对RN又爱又恨的时候,Google 在吸收了React的思想之后,Google 在2018年的世界移动大会上发布了新的跨平台开发框架[Flutter](https://github.com/flutter/flutter)的bate版本,来解决大家的痛点问题;虽然Flutter在一年前就有了,但备受关注和发展还是近几个月的事情,目前Star数量已经超过两万,而且持续快速增长中;目前RN的Star数量是六万多,基于cordova的ionic解决方案是三万多,可见大家多Flutter的期待程度,当然Google 也不负众望,版本更新速度达到了令人发指以天为单位,当然还都是beta版本;
</code></pre>
<a class="article-more-a" href="/2018/04/13/flutterguid/#more">more >></a>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color3">Flutter</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color3">移动跨平台开发</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color5">Dart</a>
</li>
</ul>
</div>
<p class="article-more-link">
<a class="article-more-a" href="/2018/04/13/flutterguid/">展开全文 >></a>
</p>
<div class="clearfix"></div>
</div>
</div>
</article>
<aside class="wrap-side-operation">
<div class="mod-side-operation">
<div class="jump-container" id="js-jump-container" style="display:none;">
<a href="javascript:void(0)" class="mod-side-operation__jump-to-top">
<i class="icon-font icon-back"></i>
</a>
<div id="js-jump-plan-container" class="jump-plan-container" style="top: -11px;">
<i class="icon-font icon-plane jump-plane"></i>
</div>
</div>
</div>
</aside>
<article id="post-sqlserver2014alwayson" class="article article-type-post article-index" itemscope itemprop="blogPost">
<div class="article-inner">
<header class="article-header">
<h1 itemprop="name">
<a class="article-title" href="/2018/04/12/sqlserver2014alwayson/">SQL Server 2014 通过AlwaysOn实现高可用集群及负载分离</a>
</h1>
<a href="/2018/04/12/sqlserver2014alwayson/" class="archive-article-date">
<time datetime="2018-04-12T07:07:04.000Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2018-04-12</time>
</a>
</header>
<div class="article-entry" itemprop="articleBody">
<pre><code>从 SQL Server 2008 开始,微软在“高可用”、“灾难恢复”技术中使用 AlwaysOn 一词。在 SQL Server 2012 中,微软明确地打出的 AlwaysOn 招牌。 SQL Server 2014 和 [SQL Server 2016](https://docs.microsoft.com/zh-cn/sql/sql-server/what-s-new-in-sql-server-2016 "新特性")对AlwaysOn功能进行了改进与升级,其中2016版本升级较大,支持了负载均衡设置和无域集群,这两个功能比较实用,可惜这次的2014没有;
</code></pre><p> SQL Server AlwaysOn 即“全面的高可用性和灾难恢复解决方案”。使用 AlwaysOn,您可以提高应用程序可用性,并且通过简化高可用性 (HA) 部署和管理方面的工作,获得更好的硬件投资回报。</p>
<p>AlwaysOn主要包含以下特性:</p>
<a class="article-more-a" href="/2018/04/12/sqlserver2014alwayson/#more">more >></a>
</div>
<div class="article-info article-info-index">
<div class="article-tag tagcloud">
<i class="icon-price-tags icon"></i>
<ul class="article-tag-list">
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color1">sql server</a>
</li>
<li class="article-tag-list-item">
<a href="javascript:void(0)" class="js-tag article-tag-list-link color4">AlwaysOn</a>
</li>