文章目录
1.正向代理:代理客户端
服务端不知道真实的用户是谁:比如科学上网服务器,国外搭建一个服务器,然后国内通过访问这台服务器来访问谷歌
2.反向代理:代理服务端
客户端不知道真实的服务端是谁:比如nginx,客户端访问nginx,nginx根据预定规则将请求打到某个服务器
3.负载均衡
1)轮询:默认,可以有加权轮询
2)权重
3)hash:iphash和url hash
4)fair:根据服务响应时间
5)least_conn:最少链接数
4.静态资源服务器
存放静态资源
5.nginx常用命令
cd /usr/local/nginx
./nginx 启动nginx
./nginx -s stop 停止nginx,暴力停止
./nginx -s quit 安全退出,先执行万任务再停止
./nginx -s reload 重新加载配置文件
6.nginx配置
1)全局配置:日志存放目录等
2)evennt:进程数,和监听事件等
3)http模块:
(1)http全局配置
(2)upstream:负载均衡
(3)server:
监听端口:http80,https443
location:静态文件服务器,负载均衡代理
rewrite:http --> https
7.nginx原理 详情点击
一个主进程(master process):执行特权操作,如读取配置、绑定端口)
一系列工作进程(worker process):按照cpu核数设置worker_processes auto
辅助进程(helper process):缓存辅助进程(cachehelper processes)等
1)主进程执行特权操作,如读取配置和绑定端口,还负责创建子进程(下面的三种类型)。
2)缓存加载进程(cache loader process)在启动时运行,把基于磁盘的缓存(disk-based cache)加载到内存中,然后退出。对它的调度很谨慎,所以其资源需求很低。
3)缓存管理进程(cache manager process)周期性运行,并削减磁盘缓存(prunes entries from the disk caches),以使其保持在配置范围内。
4)工作进程(worker processes)才是执行所有实际任务的进程:处理网络连接、读取和写入内容到磁盘,与上游服务器通信等。