Skip to content

Commit e3b6768

Browse files
committed
bigend
1 parent f402c30 commit e3b6768

13 files changed

+206
-16
lines changed

docs/big-backEnd/后端技术杂谈10:Docker 核心技术与实现原理.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,22 @@
1414
* [[](https://draveness.me/docker?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io#%E6%80%BB%E7%BB%93)总结](#[]httpsdravenessmedockerhmsrtoutiaoioutm_mediumtoutiaoioutm_sourcetoutiaoioe680bbe7bb93总结)
1515

1616

17+
本文转自互联网,侵删
18+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
19+
> https://github.com/h2pl/Java-Tutorial
1720
21+
喜欢的话麻烦点下Star哈
1822

23+
本系列文章将整理到我的个人博客
24+
> www.how2playlife.com
25+
26+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
27+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
28+
29+
30+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
31+
32+
<!-- more -->
1933

2034

2135

docs/big-backEnd/后端技术杂谈11:十分钟理解Kubernetes核心概念.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,24 @@
1212
* [下一步](#下一步)
1313

1414

15+
本文转自互联网,侵删
16+
17+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
18+
> https://github.com/h2pl/Java-Tutorial
19+
20+
喜欢的话麻烦点下Star哈
21+
22+
本系列文章将整理到我的个人博客
23+
> www.how2playlife.com
24+
25+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
26+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
27+
28+
29+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
30+
31+
<!-- more -->
32+
1533
# 十分钟带你理解Kubernetes核心概念
1634

1735
本文将会简单介绍[Kubernetes](http://kubernetes.io/v1.1/docs/whatisk8s.html)的核心概念。因为这些定义可以在Kubernetes的文档中找到,所以文章也会避免用大段的枯燥的文字介绍。相反,我们会使用一些图表(其中一些是动画)和示例来解释这些概念。我们发现一些概念(比如Service)如果没有图表的辅助就很难全面地理解。在合适的地方我们也会提供Kubernetes文档的链接以便读者深入学习。

docs/big-backEnd/后端技术杂谈12:捋一捋大数据研发的基本概念.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,26 @@
77
* [0xFF 总结](#0xff-总结)
88

99

10-
作者[**木东居士**]
10+
本文作者[**木东居士**]
1111

12-
个人主页:[http://www.mdjs.info](https://link.jianshu.com/?t=http%3A%2F%2Fwww.mdjs.info)
13-
也可以关注我:木东居士。
12+
转自个人主页:[http://www.mdjs.info](https://link.jianshu.com/?t=http%3A%2F%2Fwww.mdjs.info)
1413

14+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
15+
> https://github.com/h2pl/Java-Tutorial
16+
17+
喜欢的话麻烦点下Star哈
18+
19+
本系列文章将整理到我的个人博客
20+
> www.how2playlife.com
21+
22+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
23+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
24+
25+
26+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
27+
28+
<!-- more -->
1529

16-
_文章可以转载, 但必须以超链接形式标明文章原始出处和作者信息_
1730
## 0x00 前言
1831

1932
> 你了解你的数据吗?

docs/big-backEnd/后端技术杂谈1:搜索引擎基础倒排索引.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,24 @@
77
* [4\. 单词词典](#4-单词词典)
88

99

10+
本文转载自 https://www.cnblogs.com/zlslch/p/6440114.html
11+
12+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
13+
> https://github.com/h2pl/Java-Tutorial
14+
15+
喜欢的话麻烦点下Star哈
16+
17+
本系列文章将整理到我的个人博客
18+
> www.how2playlife.com
19+
20+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
21+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
22+
23+
24+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
25+
26+
<!-- more -->
27+
1028
# [什么是倒排索引?](https://www.cnblogs.com/zlslch/p/6440114.html)
1129

1230

docs/big-backEnd/后端技术杂谈2:搜索引擎工作原理.md

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,46 @@
11
# Table of Contents
22

3+
* [写在前面](#写在前面)
4+
* [搜索引擎发展过程](#搜索引擎发展过程)
5+
* [搜索引擎分类](#搜索引擎分类)
6+
* [相关实现技术](#相关实现技术)
7+
* [自己实现搜索引擎](#自己实现搜索引擎)
8+
* [搜索引擎解决方案](#搜索引擎解决方案)
39

410

511
本文作者:顿炖
612
链接:https://www.zhihu.com/question/19937854/answer/98791215
713
来源:知乎
14+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
15+
> https://github.com/h2pl/Java-Tutorial
816
9-
写在前面
17+
喜欢的话麻烦点下Star哈
18+
19+
本系列文章将整理到我的个人博客
20+
> www.how2playlife.com
21+
22+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
23+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
24+
25+
26+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
27+
28+
<!-- more -->
29+
## 写在前面
1030

1131
Max Grigorev最近写了一篇文章,题目是[《What every software engineer should know about search》](https://link.juejin.im/?target=https%3A%2F%2Fmedium.com%2Fstartup-grind%2Fwhat-every-software-engineer-should-know-about-search-27d1df99f80d),这篇文章里指出了现在一些软件工程师的问题,他们认为开发一个搜索引擎功能就是搭建一个ElasticSearch集群,而没有深究背后的技术,以及技术发展趋势。Max认为,除了搜索引擎自身的搜索问题解决、人类使用方式等之外,也需要解决索引、分词、权限控制、国际化等等的技术点,看了他的文章,勾起了我多年前的想法。
1232

1333
很多年前,我曾经想过自己实现一个搜索引擎,作为自己的研究生论文课题,后来琢磨半天没有想出新的技术突破点(相较于已发表的文章),所以切换到了大数据相关的技术点。当时没有写出来,心中有点小遗憾,毕竟凭借搜索引擎崛起的谷歌是我内心渴望的公司。今天我就想结合自己的一些积累,聊聊作为一名软件工程师,您需要了解的搜索引擎知识。
1434

15-
搜索引擎发展过程
35+
## 搜索引擎发展过程
1636

1737
现代意义上的搜索引擎的祖先,是1990年由蒙特利尔大学学生Alan Emtage发明的Archie。即便没有英特网,网络中文件传输还是相当频繁的,而且由于大量的文件散布在各个分散的FTP主机中,查询起来非常不便,因此Alan Emtage想到了开发一个可以以文件名查找文件的系统,于是便有了Archie。Archie工作原理与现在的搜索引擎已经很接近,它依靠脚本程序自动搜索网上的文件,然后对有关信息进行索引,供使用者以一定的表达式查询。
1838

1939
互联网兴起后,需要能够监控的工具。世界上第一个用于监测互联网发展规模的“机器人”程序是Matthew Gray开发的World wide Web Wanderer,刚开始它只用来统计互联网上的服务器数量,后来则发展为能够检索网站域名。
2040

2141
随着互联网的迅速发展,每天都会新增大量的网站、网页,检索所有新出现的网页变得越来越困难,因此,在Matthew Gray的Wanderer基础上,一些编程者将传统的“蜘蛛”程序工作原理作了些改进。现代搜索引擎都是以此为基础发展的。
2242

23-
搜索引擎分类
43+
## 搜索引擎分类
2444

2545
* 全文搜索引擎
2646

@@ -34,7 +54,7 @@ Max Grigorev最近写了一篇文章,题目是[《What every software engineer
3454

3555
元搜索引擎在接受用户查询请求时,同时在其他多个引擎上进行搜索,并将结果返回给用户。著名的元搜索引擎有InfoSpace、Dogpile、Vivisimo等,中文元搜索引擎中具代表性的有搜星搜索引擎。在搜索结果排列方面,有的直接按来源引擎排列搜索结果,如Dogpile,有的则按自定的规则将结果重新排列组合,如Vivisimo。
3656

37-
相关实现技术
57+
## 相关实现技术
3858

3959
搜索引擎产品虽然一般都只有一个输入框,但是对于所提供的服务,背后有很多不同业务引擎支撑,每个业务引擎又有很多不同的策略,每个策略又有很多模块协同处理,及其复杂。
4060

@@ -115,15 +135,15 @@ Cloudera是一家将Hadoop技术用于搜索引擎的公司,用户可以采用
115135

116136
国际化、个性化搜索、匿名搜索,这些都是Google这样的产品所不能完全覆盖到的,事实上,也没有任何一款产品可以适用于所有需求。
117137

118-
自己实现搜索引擎
138+
## 自己实现搜索引擎
119139

120140
如果我们想要实现搜索引擎,最重要的是索引模块和搜索模块。索引模块在不同的机器上各自进行对资源的索引,并把索引文件统一传输到同一个地方(可以是在远程服务器上,也可以是在本地)。搜索模块则利用这些从多个索引模块收集到的数据完成用户的搜索请求。因此,我们可以理解两个模块之间相对是独立的,它们之间的关联不是通过代码,而是通过索引和元数据,如下图所示。
121141

122142
![](https://ww1.sinaimg.cn/large/006tKfTcly1fkrzshq4cbj30ga05874m.jpg)
123143

124144
对于索引的建立,我们需要注意性能问题。当需要进行索引的资源数目不多时,隔一定的时间进行一次完全索引,不会占用很长时间。但在大型应用中,资源的容量是巨大的,如果每次都进行完整的索引,耗费的时间会很惊人。我们可以通过跳过已经索引的资源内容,删除已不存在的资源内容的索引,并进行增量索引来解决这个问题。这可能会涉及文件校验和索引删除等。另一方面,框架可以提供查询缓存功能,提高查询效率。框架可以在内存中建立一级缓存,并使用如 OSCache或 EHCache缓存框架,实现磁盘上的二级缓存。当索引的内容变化不频繁时,使用查询缓存更会明显地提高查询速度、降低资源消耗。
125145

126-
搜索引擎解决方案
146+
## 搜索引擎解决方案
127147

128148
* Sphinx
129149

docs/big-backEnd/后端技术杂谈3:Lucene基础原理与实践.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,21 @@
3232
* [高亮处理](#高亮处理)
3333

3434

35+
本文转自互联网,侵删
3536

37+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
38+
> https://github.com/h2pl/Java-Tutorial
39+
40+
喜欢的话麻烦点下Star哈
41+
42+
本系列文章将整理到我的个人博客
43+
> www.how2playlife.com
44+
45+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
46+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
47+
48+
49+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
3650

3751

3852

docs/big-backEnd/后端技术杂谈4:Elasticsearch与solr入门实践.md

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,15 +44,23 @@
4444
# 阮一峰:全文搜索引擎 Elasticsearch 入门教程
4545

4646

47+
作者:阮一峰
4748

48-
阅读 1093
49+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
50+
> https://github.com/h2pl/Java-Tutorial
4951
50-
收藏 76
52+
喜欢的话麻烦点下Star哈
5153

52-
2017-08-23
54+
本系列文章将整理到我的个人博客
55+
> www.how2playlife.com
5356
57+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
58+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
5459

5560

61+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
62+
63+
<!-- more -->
5664
原文链接:[www.ruanyifeng.com](https://link.juejin.im/?target=http%3A%2F%2Fwww.ruanyifeng.com%2Fblog%2F2017%2F08%2Felasticsearch.html)
5765

5866
[9月7日-8日 北京,与 Google Twitch 等团队技术大咖面对面www.bagevent.com](https://www.bagevent.com/event/1291755?bag_track=juejin)

docs/big-backEnd/后端技术杂谈5:云计算的前世今生.md

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,26 @@
3232
* [容器管理平台初体验](#容器管理平台初体验)
3333

3434

35-
**作者简介:**刘超,[网易云](https://www.163yun.com/product-cloudcompute?tag=M_smf_1190000008091499)解决方案首席架构师。10年云计算领域研发及架构经验,Open DC/OS贡献者。长期专注于kubernetes, OpenStack、Hadoop、Docker、Lucene、Mesos等开源软件的企业级应用及产品化。曾出版《Lucene应用开发揭秘》。
35+
**作者简介:**刘超,[网易云](https://www.163yun.com/product-cloudcompute?tag=M_smf_1190000008091499)解决方案首席架构师。
36+
37+
10年云计算领域研发及架构经验,Open DC/OS贡献者。
38+
39+
长期专注于kubernetes, OpenStack、Hadoop、Docker、Lucene、Mesos等开源软件的企业级应用及产品化。曾出版《Lucene应用开发揭秘》。
40+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
41+
> https://github.com/h2pl/Java-Tutorial
42+
43+
喜欢的话麻烦点下Star哈
44+
45+
本系列文章将整理到我的个人博客
46+
> www.how2playlife.com
47+
48+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
49+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
50+
51+
52+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
53+
54+
<!-- more -->
3655

3756
**以下为正文:**
3857

docs/big-backEnd/后端技术杂谈6:白话虚拟化技术.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,24 @@
22

33

44

5+
本文转自互联网,侵删
6+
7+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
8+
> https://github.com/h2pl/Java-Tutorial
9+
10+
喜欢的话麻烦点下Star哈
11+
12+
本系列文章将整理到我的个人博客
13+
> www.how2playlife.com
14+
15+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
16+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
17+
18+
19+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
20+
21+
<!-- more -->
22+
523
内核,是指的操作系统内核。
624

725
所有的操作系统都有内核,无论是Windows还是Linux,都管理着三个重要的资源:计算,网络,存储。

docs/big-backEnd/后端技术杂谈7:OpenStack的基石KVM.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,23 @@
2525

2626
# [Qemu,KVM,Virsh傻傻的分不清](https://www.cnblogs.com/popsuper1982/p/8522535.html)
2727

28-
原创文章,转载请注明: 转载自[Itweet](https://link.juejin.im/?target=http%3A%2F%2Fwww.itweet.cn)的博客
28+
本文转载自[Itweet](https://link.juejin.im/?target=http%3A%2F%2Fwww.itweet.cn)的博客
2929

30+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
31+
> https://github.com/h2pl/Java-Tutorial
3032
33+
喜欢的话麻烦点下Star哈
3134

35+
本系列文章将整理到我的个人博客
36+
> www.how2playlife.com
37+
38+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
39+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
40+
41+
42+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
43+
44+
<!-- more -->
3245

3346

3447

docs/big-backEnd/后端技术杂谈8:OpenStack架构设计.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,24 @@
1212
* [总结](#总结)
1313

1414

15+
本文转自互联网,侵删
16+
17+
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
18+
> https://github.com/h2pl/Java-Tutorial
19+
20+
喜欢的话麻烦点下Star哈
21+
22+
本系列文章将整理到我的个人博客
23+
> www.how2playlife.com
24+
25+
更多Java技术文章会更新在我的微信公众号【Java技术江湖】上,欢迎关注
26+
该系列博文会介绍常见的后端技术,这对后端工程师来说是一种综合能力,我们会逐步了解搜索技术,云计算相关技术、大数据研发等常见的技术喜提,以便让你更完整地了解后端技术栈的全貌,为后续参与分布式应用的开发和学习做好准备。
27+
28+
29+
如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系我,欢迎你参与本系列博文的创作和修订。
30+
31+
<!-- more -->
32+
1533
OpenStack 是开源云计算平台,支持多种虚拟化环境,并且其服务组件都提供了 API接口 便于二次开发。
1634

1735
OpenStack通过各种补充服务提供基础设施即服务 Infrastructure-as-a-Service (IaaS)`的解决方案。每个服务都提供便于集成的应用程序接口`Application Programming Interface (API)。

0 commit comments

Comments
 (0)