Nginx和Apache和Tomcat的区别

Apache

  • Apache HTTP Server (简称Apache) 它是一个模块化的web服务器,可以运行在几乎所有广泛使用的计算机平台上

特点:

  • 性能稳定
  • 只适合静态解析
  • 功能强大
  • 高度模块化
  • 采用MPM多路处理模块
  • 速度快
  • 可做代理服务器或负载均衡
  • 支持第三方模块

Tomcat

  • 也是Apache软件基金中的一个项目,是一个轻量级的应用服务器
  • 可以认为是Apache的拓展,但是可以独立于Apache运行

特点:

  • 动态解析容器,处理动态请求
  • 只能用作java服务器

Nginx

  • 俄罗斯人研发的一款高性能的HTTP和反向代理服务器,也可以用来做邮件服务器

特点:

  • 轻量级,占用更少的内存和资源
  • 抗高并发能力强,采用的是异步网络IO模型,epoll机制
  • 实现负载均衡、反向代理,动静分离
  • 模块化设计
  • 基于事件驱动架构
  • 支持热部署:不停机更新配置文件,升级版本

区别

Nginx和Tomcat

  • Nginx常用作静态处理和代理服务器,是一个web服务器;而Tomcat是一个应用服务器,可以处理动态请求
  • Nginx通过作为反向代理将请求分发到后面的Tomcat服务器上,本身不做处理

Nginx和Apache

  • Apache和Nginx都可用来实现负载均衡和充当反向代理的角色
  • Apache是同步网络IO模型,采用了select机制;Nginx是异步网络IO模型,采用了epoll机制;所以说Nginx的抗高并发能力会更好,可以同时处理更多请求
  • Nginx更加轻量化,占用更少的内存和资源
  • Apache性能更稳定,比Nginx的bug要少
  • Nginx处理静态请求效果更好

Apcahe和Tomcat

  • Apcahe是一个web服务器,只支持静态处理
  • Tomcat是一个应用服务器,支持动态处理
  • Tomcat可以认为是Apache的拓展,但是能独立运行

配合

Apcahe和Tomcat架构

  • 如果客户端请求的是静态页面,则只需要Apache服务器响应请求。
  • 如果客户端请求动态页面,则是Tomcat服务器响应请求。

N+A+T架构

  • 通常情况下,tomcat和nginx和apache结合使用。nginx、apache既可以提供web服务,也可以当反向代理将动态请求转发到后面的tomcat服务器上

在这里插入图片描述

  • 以上的架构中:当haproxy或nginx作为前端代理时, 如果是静态内容,如html、 css等内容,则直接交给静态服务器处理;
  • 如果请求的图片等内容,则直接交给图片服务器处理;如果请求的是动态内容,则交给tomcat服务器处理,不过在tomcat服务器上,同时运行着nginx服务器
  • 此时的nginx作为静态服务器,它不处理静态请求,它的作用主要是接受请求,并将请求转发给tomcat服务器的
相关推荐
©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页