Nginx/Tomcat/Apache的优缺点和区别

nginx/tomcat/apache的区别

Apache

Apache是一个模块化的服务器,可以运行在几乎所有的计算机平台上,属于应用服务器

缺点

配置相对复杂,而且不使用脚本,模块就无法支持动态页面

优点

支持模块多,性能稳定,由于本身是静态解析,所以适合处理静态文件(HTML,图片等),也可以通过扩展脚本,模块等支持动态页面

Tomcat

Tomcat是应用服务器,并且只是一个Servlet容器

缺点

基本上只能做java服务器

优点

处理动态请求,是编译Servlet的容器

Nginx

Nginx是一款HTTP和代理服务器,Nginx常用作静态内容服务和代理服务器,将外来请求转发给应用服务(tomcat,django)。

缺点

只适合静态和反向代理

优点

负载均衡,反向代理,动静分离,静态请求可以直接通过Nginx处理,而且处理效率比Apache高,动态请求才需要通过转发到Tomcat处理

总结

  • Apache/Nginx应该叫做Http Server
  • 而tomcat则是一个APPlication Server,准确来说应该是Servlet/JSP应用的容器。

HttpServer

一个HttpServer关心的是HTTP协议层面的传输和访问控制,所以在
Apache/Nginx上可以看到代理,负载均衡等,客户端通过HTTP Server访问服务器上存储的资源(HTML文件,图片文件等等)

应用服务器

就是执行应用的容器,首先需要支持开发语言的Runtime(对于Tomcat来说,就是Java)。其次需要支持应用相关的规范,例如类库,安全方面的特性。对于tomcat来说就是需要提供JSP/Sevlet运行需要的标准类库等。
为了方便,应用服务器往往也会集成 HTTP Server 的功能,但是不如专业的 HTTP Server 那么强大,所以应用服务器往往是运行在 HTTP Server 的背后,执行应用,将动态的内容转化为静态的内容之后,通过 HTTP Server 分发到客户端。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值