nginx与apache
- 这里说的apche指apache http server ,与nginx都属于http服务器软件,主要处理静态资源。
- http server关心的是http协议层面的传输和访问控制,所以会有代理、负载均衡等功能。(代理指的是直面外来请求转发给后面的应用服务器)
-
nginx相对于apache优点
- 轻量级
- 抗并发
- 高度模块化
- 负载均衡
-
apache相对于nginx优点
- rewrite
- 动态页面
- 模块多
- 稳定
-
一些点
- apache 是同步多进程模型,一个连接对应一个进程。nginx是异步的,多个连接可以对应一个进程。
- 动态请求apache, 静态和反向nginx
- nginx 适合做前端服务器,负载性能好
tomcat
- tomcat是一个application server,更准确的说是一个servlet/jsp应用的容器,处理http请求并生成动态页面。
- 应用服务器首先要保证应用能在应用服务器正常运行,其次要支持应用相关规范。也集成http server的功能,但不如专业的那么强大,所以应用服务器通常运行在http server背后,执行应用,将动态内容转化为静态内容后,通过http server分发到客户端。
工作中nginx和apache的主要作用
- http鉴权
- 负载均衡
- 处理静态文件
- ajp协议,页面缓存
- 反向代理
- ajax跨域
- 页面缓存
tomcat与nginx配合
- 动静态资源分离:运用nginx的反向代理功能分发请求,动态资源请求交给tomcat,静态资源由nginx返回给浏览器,减轻tomcat的压力
- 负载均衡:通过算法把请求分发到各个不同的tomcat实例进行处理