高效地学习开源项目(实战篇) - youngperson/study-100 GitHub Wiki

模板

1、安装 依赖组件
目录结构
提供的工具
2、运行 命令
配置文件
3、原理研究 关键特性的基本实现
优缺点对比
4、测试 使用前测试
5、源码研究 关键代码

Nginx学习

1、安装 依赖组件 pcre(重写rewrite)、zlib(gzip压缩)、openssl(证书)
目录结构 logs/(日志)、conf/(配置相关)、sbin/(命令)、html(50x、index.html页面)
提供的工具 暂无
2、运行 命令 [root@chons nginx]# nginx -h

nginx version: nginx/1.11.12 Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives]

Options: -?,-h : 帮助 -v : 显示版本并退出 -V : 显示版本、配置选项然后退出 -t : 测试配置文件并退出 -T : 测试配置文件,输出到屏幕并退出 -q : 在测试配置文件期间忽略非error的信息 -s signal : 将信号量发送到主进程:stop, quit, reopen, reload -p prefix : 设置前缀路径 (default: /etc/nginx/) -c filename : 设置配置文件 (default: /etc/nginx/nginx.conf) -g directives : 从配置文件中设置全局指令

配置文件 worker_processes(nginx worker进程,一般设为cpu核数)、 error_log(错误日志存放的目录,日志级别有debug, info, notice, warn, error, crit)、user(默认运行用户是nginx)、pid(进程pid存放位置)、

参考:https://www.cnblogs.com/liang-wei/p/5849771.html

3、原理研究 关键特性的基本实现 红黑树管理定时器、多路复用、Linux epoll、sendfile 、负载均衡和反向代理
优缺点对比 红黑树 vs B树,select、poll、epoll对比
4、测试 使用前测试
5、源码研究 关键代码
⚠️ **GitHub.com Fallback** ⚠️