webserver总结

前言

我们常用的web服务器是tomcat,除了tomcat你还知道那些?

tomcat之外的其他webserver

这里写图片描述

nginx

nginx有很多优点:
1.nginx是多进程的,不会出现并发问题,不用加锁。一个进程出问题退出不影响别的进程。由一个主进程master和多个从进程worker组成。
2.io是异步io
进程划分图:
这里写图片描述

模块划分图:
这里写图片描述

jetty

Jetty 可以同时处理大量连接而且可以长时间保持这些连接。例如像一些 web 聊天应用非常适合用 Jetty 做服务器,像淘宝的 web 旺旺就是用 Jetty 作为 Servlet 引擎。

openresty

结合了nginx和lua框架。
nginx很好,但是nginx是c语言写的,openresty结合了nginx的优势和lua这个简单的脚本语言。

借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。

而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前在京东如实时价格、秒杀、动态服务、单品页、列表页等都在使用Nginx+Lua架构,其他公司如淘宝、去哪儿网等。

apachehttpd

apachehttpd是阻塞io,但是性能稳定。

扩展应用服务器

jboss

tomcat是轻量级的,主要针对jsp和servlet.
而jboss的核心服务是提供ejb服务器,不包括jsp page/servlets的web服务器。

weblogic

BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。
BEA WebLogic Server是专门为企业电子商务应用系统开发的。

小结

tomcat是常用的,轻量级,支持分布式,实现原理是各种嵌套的容器。除tomcat之外,nginx是个不错的web server, 异步io,事件驱动适合io密集型的业务。jetty用的也挺多的,支持长连接。

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页