1. 运行中的Nginx进程间关系
- nginx 进程中, 一般使用master-worker关系, worker 最好应该与cpu的数量保持一致。这样的系统可以充分利用SMP多核框架。
- nginx 的一个worker 进程可以同时处理的请求数只受限于内存大小, 而且在架构设计上, 不同的worker进程之间处理并发请求的时候几乎没有同步锁的限制, 进程间切换的代价是最小的。
2. 静态web服务器
- 首先, 我们通过lnmpa 搭建了一个环境, 里面已经直接配置好了nginx, 我们修改server_name, 并试图访问它
但是, 我们发现 使用127.0.0.1 的方式可以直接访问, 但是使用 zhyh2010.com 的方式却不可以!!!
原因: nginx 不能作为dns 来用, 需要自己配置 zhyh2010.com 相关联的IP 地址, 这里可以通过在hosts 中进行设置
3. 反向代理服务器
- 反向代理方式是指用代理服务器来接受Internet上的连接请求, 然后将请求转发给内部网络中的上游服务器, 并将从上游服务器上得到的结果返回给Internet上请求连接的客户端, 此时, 代理服务器对外表现就是一个web服务器
- 当客户端发来Http 请求的时候, Nginx 不会立即转发到上游服务器, 而是先把用户请求完整的接收到Nginx所在服务器的硬盘或者内存中, 然后再向上游服务器发起连接, 把缓存的客户端请求转发到上游服务器。
- 这种方式, 延长了一个请求的处理时间, 增加了用于缓存请求内容的内存和磁盘空间, 但是降低了上游服务器的负载, 将压力放在了Nginx服务器上
遇到一个问题:局域网内不能访问, 但本机可以。 原因出在 防火墙设置
另外每次修改完 nginx.conf 之后, 需要使用
nginx -s reload
使其生效