Apche-Tomcat-Ngix等Web容器对比

  1. 服务器原理

0.通过main()方法启动一个线程

1.对特定端口的服务器套接字进行侦听,并接受其连接:

        Socket socket = new ServerSocket(post).accept();

2.tomcat抓取该端口来自客户端的连接,并获取对应的请求和方法

3.tomcat动态的加载对应的类,并按照请求传入执行方法

4.tomcat渲染并返回对应的执行结果

5.关闭对应的Socket连接;并继续侦听该端口

  1. Apache

Apache是一个web服务器

相对于Tomcat而言,Apache是静态解析,适合静态HTML、图片等

  1. Nginx

A:Nginx是一个轻量级的web服务器,处理静态页面性能高于Apache

A:Nginx的并发性能比Apache好,相对于同步的apache而言,nginx处理请求是异步的

T:Nginx有动态分离机制,即静态请求直接就可以通过Nginx处理,动态请求才转发请求到后台交由Tomcat进行处理

Nginx本身是一个反向代理服务器 ,且支持负载均衡

  1. JBOSS

1.基于Tomcat的应用服务器,以Tomcat作为内核并进行优化

2.不但是Servlet容器,而且是EJB容器;弥补了Tomcat只是一个Servlet容器的缺憾

3.提高了tomcat对于静态内容以及大文件的处理速度,和HTTPS等性能,最大访问量等

4.提高了系统的可伸缩性

  1. Tomcat
    1. 特点

1.侧重于JSP的应用服务器,加载jsp等动态页面效果较好

2.Apache旗下的基于java语言

    1. 缺点

1.对于静态页面的处理效率低下

2.不支持session复制

3.缺少多个实例协同工作的设置,对于集群

猜你喜欢

转载自blog.csdn.net/qq_38331606/article/details/91973216