文件索引

Table of Contents

1. 单机系统

1.1. 基础

1.2. linux

1.3. 内存

1.6. 网络

  • UNP Unix网络编程(Unix Network Programming), W. Richard Stevens的神作。包含了TCP Illustrated v1里面和TCP相关的部分章节内容。
  • itachi 自己两天时间写完的异步网络编程框架内核。
  • libev 开源的事件触发器,被认为是更高效的libevent.
  • hpserver 开源的网络编程框架,可以当做一个入门级的网络编程框架阅读。
  • nmstl 开源的网络编程框架。一个很早的作品,代码十分简洁,实现了SEDA的思想。
  • muduo 开源的网络编程框架,作者理想中的网络编程框架实现,里面有很多mina/netty的影子。
  • kylin Baidu in-house的异步编程框架,是linsd(百度首席架构师林仕鼎)的神作,通过阅读这个框架的代码让我理解了异步编程模型。
  • zeromq 开源的消息传输系统,颠覆我们思考和编写网络通信程序的方式。
  • netty an asynchronous event-driven network application framework in Java based on Java NIO.
  • nginx WebServer届的 要你命3000, 可以作为许多协议(HTTP/HTTPS/SMTP/POP3/IMAP/HTTP2)的反向代理服务器, 还可以作为负载均衡器,缓存服务器等。
  • 深入NGINX:我们如何设计它的性能和扩展性
  • finagle an extensible RPC system for the JVM, used to construct high-concurrency servers.
  • HAProxy 高性能的负载均衡器,可以提供4(TCP),7(HTTP)层反向代理。
  • gunicorn Python WSGI HTTP Server. green unicorn(Ruby实现)
  • 202206 Introduction to HTTP/2
  • 202302 对于网络延迟和带宽的理解
  • 202212 Inside look at modern web browser @ 2018

1.7. 软件

  • ubuntu 如何更好地使用Ubuntu. 之前使用Ubuntu有段痛苦的经历
  • macosx 如何更好地使用Mac. 以前使用Windows,后来转向Ubuntu,再后来买了个MBA.
  • docker 基于lxc(linux container)的分发应用工具。 (容器实战高手课)
  • vagrant 用来构件虚拟开发环境的工具,底层可以使用多种虚拟化技术。现在支持相对比较好的是VirtualBox
  • sphinx C++实现的全文检索引擎,可以很容易地替换掉MySQL内置的全文检索(FTS)实现
  • graphiteOpenTSDB 类似, 时间序列(time series)数据库, 但是主要用于监控。
  • git 分布式版本控制系统. 最开始用于管理linux kernel, 现在许多开源软件托管在github上使用git管理。
  • ElasticSearch 分布式的搜索引擎,而且还有非常好的插件机制和生态系统比如ELK.
  • ffmpeg 视频/音频处理的瑞士军刀.

2. 数据库存储

3. 算法数据结构

4. 机器学习

5. 分布式系统

5.1. Projects

5.2. Articles

5.3. Papers

6. 程序设计语言

语言相关:

语言无关:

7. 软件设计

7.1. Articles

7.2. Books

8. 网络资源

8.1. Blogs

8.3. Articles

9. 阅读笔记

9.2. 历史社会

9.3. 小说杂文

9.4. 个人管理

9.5. 软件开发

10. LeetCode