nginx基础
1.1 什么是nginx
- 部署web项目的容器(部署你们写的项目的),常见的web容器有:nginx、Apache、Tomcat
- nginx官方宣称可以处理十万并发(处理静态资源的时候应该是可以达到这个水平)
- 多进程 + 协程 + epool
1.2 nginx高并发原理( 多进程+epoll实现高并发 )
- Nginx 在启动后,会有一个 master 进程和多个相互独立的 worker 进程。
- 每个子进程只有一个线程,采用的 IO多路复用模型epoll,实现高并发。
nginx正向代理和反向代理
2.1 正向代理
- 我访问不了某网站,但是我能访问一个代理服务器,这个代理服务器呢,他能访问那个我不能访问的网站
- 于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容,代理服务器去取回来,然后返回给我。
- 客户端必须设置正向代理服务器,当然前提是要知道正向代理服务器的IP地址,还有代理程序的端口。
- 例如之前使用过这类软件例如CCproxy,http://www.ccproxy.com/ 需要在浏览器中配置代理的地址。
- 正向代理作用:
- 访问原来无法访问的资源,如google
- 可以做缓存,加速访问资源
- 对客户端访问授权,上网进行认证
- 代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息
2.2 nginx反向代理
- 反向代理对用户透明,客户端无需任何配置即可访问服务。
- 实际运行方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器。
- 并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。