服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

区分tomcat与web服务器、应用服务器的关系

tomcat服务器是一个免费的开放源代码的web应用服务器。因为tomcat技术先进、性能稳定且免费,所以深受java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的web应用服务器。

一、tomcat与应用服务器

到目前为止,tomcat一直被认为是servlet/jsp api的执行器,也就所谓的servlet容器。然而,tomcat并不仅仅如此,它还提供了jndi和jmx api的实现机制。尽管如此,tomcat仍然还不能算是应用服务器,因为它不提供大多数j2ee api的支持。

很有意思的是,目前许多的应用服务器通常把tomcat作为它们servlet和jsp api的容器。由于tomcat允许开发者只需通过加入一行致谢,就可以把tomcat嵌入到它们的应用中。遗憾的是,许多商业应用服务器并没有遵守此规则。

对于开发者来说,如果是为了寻找利用servlet、jsp、jndi和jmx技术来生成java web应用的话,选择tomcat是一个优秀的解决方案;但是为了寻找支持其他的j2ee api,那么寻找一个应用服务器或者把tomcat作为应用服务器的辅助,将是一个不错的解决方案;第三种方式是找到独立的j2ee api实现,然后把它们跟tomcat结合起来使用。虽然整合会带来相关的问题,但是这种方式是最为有效的。。

二、tomcat与web服务器

tomcat是提供一个支持servlet和jsp运行的容器。servlet和jsp能根据实时需要,产生动态网页内容。而对于web服务器来说, apache仅仅支持静态网页,对于支持动态网页就会显得无能为力;tomcat则既能为动态网页服务,同时也能为静态网页提供支持。尽管它没有通常的web服务器快、功能也不如web服务器丰富,但是tomcat逐渐为支持静态内容不断扩充。大多数的web服务器都是用底层语言编写如c,利用了相应平台的特征,因此用纯java编写的tomcat执行速度不可能与它们相提并论。

一般来说,大的站点都是将tomcat与apache的结合,apache负责接受所有来自客户端的http请求,然后将servlets和jsp的请求转发给tomcat来处理。tomcat完成处理后,将响应传回给apache,最后apache将响应返回给客户端。

扫描关注微信公众号