From 6b27cb7e8915f6013672651b31758b8ff6f442b7 Mon Sep 17 00:00:00 2001 From: yulewei Date: Sun, 3 Dec 2023 00:28:44 +0800 Subject: [PATCH] Site updated: 2023-12-03 00:28:43 --- 2016/11/database-books/index.html | 2 +- 2016/11/java-books/index.html | 2 +- 2016/11/java-official-doc/index.html | 2 +- 2016/11/lang-and-compiler-books/index.html | 2 +- 2016/12/itext-pdf/index.html | 2 +- 2016/12/java-8-stream-api/index.html | 2 +- 2016/12/mybatis-generator/index.html | 2 +- 2016/12/software-dev-books/index.html | 2 +- 2017/01/mysql-data-types/index.html | 2 +- 2017/03/java-executor/index.html | 2 +- 2017/04/javac-api/index.html | 2 +- 2017/05/java-method-parameter/index.html | 2 +- 2017/11/zookeeper-note/index.html | 2 +- 2018/01/java-ffi/index.html | 2 +- .../stack-frame-calling-convention/index.html | 2 +- 2018/06/mysql-binlog/index.html | 2 +- 2018/10/java-agent/index.html | 2 +- 2019/01/elastic-stack/index.html | 2 +- 2019/06/mysql-5.7-json/index.html | 2 +- 2020/05/kong-gateway/index.html | 2 +- 2023/07/innodb-locking/index.html | 2 +- .../io-multiplexing-network-server/index.html | 2 +- .../12/popular-websites-tech-stack/index.html | 951 +++++++++--------- about/index.html | 2 +- archives/2016/11/index.html | 2 +- archives/2016/12/index.html | 2 +- archives/2016/index.html | 2 +- archives/2017/01/index.html | 2 +- archives/2017/03/index.html | 2 +- archives/2017/04/index.html | 2 +- archives/2017/05/index.html | 2 +- archives/2017/11/index.html | 2 +- archives/2017/index.html | 2 +- archives/2018/01/index.html | 2 +- archives/2018/06/index.html | 2 +- archives/2018/10/index.html | 2 +- archives/2018/index.html | 2 +- archives/2019/01/index.html | 2 +- archives/2019/06/index.html | 2 +- archives/2019/index.html | 2 +- archives/2020/05/index.html | 2 +- archives/2020/index.html | 2 +- archives/2023/07/index.html | 2 +- archives/2023/12/index.html | 2 +- archives/2023/index.html | 2 +- archives/index.html | 2 +- archives/page/2/index.html | 2 +- atom.xml | 2 +- categories/Java/index.html | 2 +- categories/MySQL/index.html | 2 +- categories/index.html | 2 +- .../\346\236\266\346\236\204/index.html" | 2 +- .../\347\274\226\347\250\213/index.html" | 2 +- .../index.html" | 2 +- index.html | 6 +- page/2/index.html | 2 +- ...57\346\240\210\346\225\264\347\220\206.md" | 3 +- search.xml | 922 ++++++++++++----- tags/ABI/index.html | 2 +- tags/API/index.html | 2 +- tags/ASM/index.html | 2 +- tags/C/index.html | 2 +- tags/CS/index.html | 2 +- tags/ELK/index.html | 2 +- tags/Elastic/index.html | 2 +- tags/FFI/index.html | 2 +- tags/IO/index.html | 2 +- tags/InnoDB/index.html | 2 +- tags/JNA/index.html | 2 +- tags/JNI/index.html | 2 +- tags/JNR/index.html | 2 +- tags/JVM/index.html | 2 +- tags/Java/index.html | 2 +- tags/Kong/index.html | 2 +- tags/Lombok/index.html | 2 +- tags/MVCC/index.html | 2 +- tags/MyBatis/index.html | 2 +- tags/MySQL/index.html | 2 +- tags/Nginx/index.html | 2 +- tags/OS/index.html | 2 +- tags/OpenResty/index.html | 2 +- tags/Paxos/index.html | 2 +- tags/Pyhon/index.html | 2 +- tags/Ruby/index.html | 2 +- tags/ZooKeeper/index.html | 2 +- tags/binlog/index.html | 2 +- tags/byte-buddy/index.html | 2 +- tags/index.html | 2 +- tags/java/index.html | 2 +- tags/javaagent/index.html | 2 +- tags/javac/index.html | 2 +- "tags/\344\271\246\347\261\215/index.html" | 2 +- "tags/\344\273\243\347\240\201/index.html" | 2 +- "tags/\345\205\261\350\257\206/index.html" | 2 +- .../index.html" | 2 +- .../index.html" | 2 +- "tags/\345\267\245\345\205\267/index.html" | 2 +- "tags/\345\271\266\345\217\221/index.html" | 2 +- .../index.html" | 2 +- .../index.html" | 2 +- .../index.html" | 2 +- "tags/\346\227\245\345\277\227/index.html" | 2 +- .../index.html" | 2 +- "tags/\346\236\266\346\236\204/index.html" | 2 +- .../index.html" | 2 +- "tags/\347\275\221\345\205\263/index.html" | 2 +- "tags/\347\275\221\347\273\234/index.html" | 2 +- "tags/\350\257\255\350\250\200/index.html" | 2 +- "tags/\351\224\201/index.html" | 2 +- 109 files changed, 1260 insertions(+), 832 deletions(-) diff --git a/2016/11/database-books/index.html b/2016/11/database-books/index.html index a33d722d..1ebf118b 100644 --- a/2016/11/database-books/index.html +++ b/2016/11/database-books/index.html @@ -981,7 +981,7 @@

MySQL源码架构

- 4:40 + 4:41 diff --git a/2016/11/java-books/index.html b/2016/11/java-books/index.html index 758adc53..a59a54f0 100644 --- a/2016/11/java-books/index.html +++ b/2016/11/java-books/index.html @@ -982,7 +982,7 @@

偏向Java EE

- 4:40 + 4:41 diff --git a/2016/11/java-official-doc/index.html b/2016/11/java-official-doc/index.html index dbfcbfba..b6831ec9 100644 --- a/2016/11/java-official-doc/index.html +++ b/2016/11/java-official-doc/index.html @@ -984,7 +984,7 @@

Java虚拟机

- 4:40 + 4:41 diff --git a/2016/11/lang-and-compiler-books/index.html b/2016/11/lang-and-compiler-books/index.html index c48543ae..b9841519 100644 --- a/2016/11/lang-and-compiler-books/index.html +++ b/2016/11/lang-and-compiler-books/index.html @@ -923,7 +923,7 @@

编程语言与编译器书籍 - 4:40 + 4:41 diff --git a/2016/12/itext-pdf/index.html b/2016/12/itext-pdf/index.html index 8f9026e1..065ea589 100644 --- a/2016/12/itext-pdf/index.html +++ b/2016/12/itext-pdf/index.html @@ -904,7 +904,7 @@

iText处理pdf书签和标注代 - 4:40 + 4:41 diff --git a/2016/12/java-8-stream-api/index.html b/2016/12/java-8-stream-api/index.html index b6520795..ed2e2321 100644 --- a/2016/12/java-8-stream-api/index.html +++ b/2016/12/java-8-stream-api/index.html @@ -996,7 +996,7 @@

归约操作与收集器

- 4:40 + 4:41 diff --git a/2016/12/mybatis-generator/index.html b/2016/12/mybatis-generator/index.html index b268d2f1..f4e276a0 100644 --- a/2016/12/mybatis-generator/index.html +++ b/2016/12/mybatis-generator/index.html @@ -939,7 +939,7 @@

运行MyBatis生成器

- 4:40 + 4:41 diff --git a/2016/12/software-dev-books/index.html b/2016/12/software-dev-books/index.html index c755a119..1d572a8f 100644 --- a/2016/12/software-dev-books/index.html +++ b/2016/12/software-dev-books/index.html @@ -1040,7 +1040,7 @@

软件项目管理(Fred Br - 4:40 + 4:41 diff --git a/2017/01/mysql-data-types/index.html b/2017/01/mysql-data-types/index.html index 0af2d15d..50e722c0 100644 --- a/2017/01/mysql-data-types/index.html +++ b/2017/01/mysql-data-types/index.html @@ -1102,7 +1102,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2017/03/java-executor/index.html b/2017/03/java-executor/index.html index 26f7d5df..df2faa1d 100644 --- a/2017/03/java-executor/index.html +++ b/2017/03/java-executor/index.html @@ -1064,7 +1064,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2017/04/javac-api/index.html b/2017/04/javac-api/index.html index cdc41e89..3d67101c 100644 --- a/2017/04/javac-api/index.html +++ b/2017/04/javac-api/index.html @@ -1169,7 +1169,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2017/05/java-method-parameter/index.html b/2017/05/java-method-parameter/index.html index d53e3cc3..b2b595e4 100644 --- a/2017/05/java-method-parameter/index.html +++ b/2017/05/java-method-parameter/index.html @@ -996,7 +996,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2017/11/zookeeper-note/index.html b/2017/11/zookeeper-note/index.html index d5f1ac6e..35b46fcf 100644 --- a/2017/11/zookeeper-note/index.html +++ b/2017/11/zookeeper-note/index.html @@ -1160,7 +1160,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2018/01/java-ffi/index.html b/2018/01/java-ffi/index.html index 65469d90..7551ff74 100644 --- a/2018/01/java-ffi/index.html +++ b/2018/01/java-ffi/index.html @@ -1019,7 +1019,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2018/01/stack-frame-calling-convention/index.html b/2018/01/stack-frame-calling-convention/index.html index 9702ea71..f61836a1 100644 --- a/2018/01/stack-frame-calling-convention/index.html +++ b/2018/01/stack-frame-calling-convention/index.html @@ -1004,7 +1004,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2018/06/mysql-binlog/index.html b/2018/06/mysql-binlog/index.html index 1663f062..f6a325c5 100644 --- a/2018/06/mysql-binlog/index.html +++ b/2018/06/mysql-binlog/index.html @@ -976,7 +976,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2018/10/java-agent/index.html b/2018/10/java-agent/index.html index f90ea025..ac7a6726 100644 --- a/2018/10/java-agent/index.html +++ b/2018/10/java-agent/index.html @@ -1008,7 +1008,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2019/01/elastic-stack/index.html b/2019/01/elastic-stack/index.html index 946bf8cf..1415b61c 100644 --- a/2019/01/elastic-stack/index.html +++ b/2019/01/elastic-stack/index.html @@ -1108,7 +1108,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2019/06/mysql-5.7-json/index.html b/2019/06/mysql-5.7-json/index.html index 964984a2..16762468 100644 --- a/2019/06/mysql-5.7-json/index.html +++ b/2019/06/mysql-5.7-json/index.html @@ -1283,7 +1283,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2020/05/kong-gateway/index.html b/2020/05/kong-gateway/index.html index ef27d141..78e69848 100644 --- a/2020/05/kong-gateway/index.html +++ b/2020/05/kong-gateway/index.html @@ -1069,7 +1069,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2023/07/innodb-locking/index.html b/2023/07/innodb-locking/index.html index ffdd86a9..a98a1629 100644 --- a/2023/07/innodb-locking/index.html +++ b/2023/07/innodb-locking/index.html @@ -1613,7 +1613,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2023/07/io-multiplexing-network-server/index.html b/2023/07/io-multiplexing-network-server/index.html index 0357501e..c7cd9625 100644 --- a/2023/07/io-multiplexing-network-server/index.html +++ b/2023/07/io-multiplexing-network-server/index.html @@ -1212,7 +1212,7 @@

参考资料

- 4:40 + 4:41 diff --git a/2023/12/popular-websites-tech-stack/index.html b/2023/12/popular-websites-tech-stack/index.html index 76623bad..de87d1e4 100644 --- a/2023/12/popular-websites-tech-stack/index.html +++ b/2023/12/popular-websites-tech-stack/index.html @@ -506,7 +506,7 @@

流行互联网网站技术栈 - 100k + 98k @@ -520,7 +520,7 @@

流行互联网网站技术栈 - 1:31 + 1:29 @@ -543,9 +543,7 @@

流行互联网网站技术栈

技术栈是构建应用的技术集合,由编程语言、框架、库、服务器、数据库、工具等组合而成。组成技术栈的技术是与具体业务无关的基础软件。互联网公司选择的技术栈,倾向于使用开源软件,相对于专有软件,开源软件具有高质量、免费、开放、灵活等优势。互联网的早期开拓者 Yahoo 的技术栈选择是经典案例,受开源运动的影响,在 2000 左右 Yahoo 从最初基于自定义的专属软件迁移了到 LAMP 技术栈。

在“开源”(open source)一词出现之前,技术社区的黑客选择使用“自由软件”(free software)这个词。但是“自由软件”这个词与对知识产权的敌意、共产主义和其它观点相联系,几乎不受管理者和投资者的欢迎,于是 1998 年 2 月 3 日在由 Eric Raymond 等人参加的会议上“开源”一词诞生,2 月下旬开源软件促进会成立 OSI,Eric Raymond 担任主席。自由软件和开源软件被合称为 FOSS。缩写“LAMP”代表的是 Linux-Apache-MySQL-PHP,这些软件都是自由软件或开源软件。

-

案例汇总与解析

-

技术发展时间线

-

在互联网诞生早期,开源技术栈、开源社区尚未成熟,互联网公司不得不自研专有软件,随着开源软件的成熟,技术栈的选择开始从专有软件逐渐转向开源软件。主要 Web 技术和服务端技术的发展时间线:

+

案例汇总与解析

技术发展时间线

在互联网诞生早期,开源技术栈、开源社区尚未成熟,互联网公司不得不自研专有软件,随着开源软件的成熟,技术栈的选择开始从专有软件逐渐转向开源软件。先来看下,主要 Web 技术和服务端技术的发展时间线:

-

技术栈案例汇总

-

按编程语言区别,主要流行的互联网产品的创建时间和早期的技术栈选择(也可以参见 wiki):

+

技术栈案例汇总

按编程语言区别,主要流行的互联网产品的创建时间和早期的技术栈选择(也可以参见 wiki):