您好,匿名用户
随意问技术百科期待您的加入

java里面的web容器是指什么

+1 投票

容器的概念似乎是从java开始提出的,在其它语言里都没有类似的描述。从我们开始接触的tomcat,jetty等等,在我们做脚本语言的看来都是服务器,但是在java中却被称为web容器,那么什么是web容器呢?

用户头像 提问 2012年 12月1日 @ 阿尔托莉雅 下士 (587 威望)
分享到:

1个回答

+1 投票
 
最佳答案

web服务器,严格意义上讲就是实现http协议的最基本功能,能监听指定服务器端口,并接受请求发出响应的服务系统。例如apache、nginx等都是此类。不过现实中很多web服务器出于种种考虑回内置针对特定语言或架构的处理体系,例如iis内置了asp.net的处理架构,apache也可以通过扩展提供php、rails等处理架构(这些特别内置的模块,你也可以简单理解为web容器了)。如果web服务器自己不处理特别请求,那么可以通过cgi等方式转发给后端处理,例如apache、nginx都可以通过fastcgi将请求转发给后端端口,例如php-fpm服务,或python的什么服务等等。

其实在java之前一直不太有web容器这种说法,到目前似乎也只有java是这么提的。这主要是因为整个java的web开发是基于javaEE的servlet技术体系,该体系规范规定了web请求的整个生命周期的方方面面。但是规范只是规定了实现的标准,或者说是接口(interface),具体实现都是各厂商自己搞定,所以这就出现了各种不同的web容器,例如tomcat、jetty、jboss等等。

又说回来,这些容器为了方便开发者,大多都提供了web服务器的功能,不过和专业的web服务器相比总有些缺失不足,所以一般只用来做开发用,生产环境主要还是作为后端服务。

用户头像 回复 2012年 12月1日 @ Pikachu 上等兵 (475 威望)
选中 2012年 12月1日 @阿尔托莉雅
提一个问题:

相关问题

0 投票
1 回复 37 阅读
用户头像 提问 2012年 12月1日 @ Nero 上等兵 (377 威望)
+2 投票
1 回复 60 阅读
0 投票
1 回复 23 阅读
0 投票
1 回复 45 阅读
用户头像 提问 2012年 12月1日 @ Jayce 上等兵 (271 威望)
0 投票
0 回复 82 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...