各种web相关技术之间的区别?
嘿嘿!我一直想知道 Web 容器、Web 服务器、Servlet 容器、应用程序服务器、Web 框架、Web 平台等之间的区别是什么。这些术语一直让我感到困惑。在谷歌上搜索得到了一些答案,但有时网上的信息是相当矛盾的。
根据我的理解,应用程序服务器是一个复杂的东西,包括 Web 服务器和更多的东西,如业务逻辑支持、EJB。 Web 服务器只处理简单的 http。 Web 容器是一个 Web 服务器并提供 servlet/JSP 支持。我说得对吗?有人可以解释一下这些技术吗?也许一些参考和比较将不胜感激。我知道可能有人问过类似的问题 - 但他们要么没有得到正确的回答,要么有相互矛盾的答案,或者没有比较上面提出的所有技术。提前致谢!
heya! i always wondered what was the difference between a web container, web server, servlet container, application server, web framework, web platform, etc. these terms have always confused me. searching on google has led to some answers, but sometimes, information online is quite conflicting.
as per my understanding, an application server is a complex thing which includes a web server AND more things like business logic support, EJB. web server only deals with simple http. web container is a web server and provides servlet/JSP support. am i right? could somebody please shed some light on these technologies. perhaps some references and comparisons would be greatly appreciated. im aware that similar questions might've been asked- but theyve either not been answered properly, or have conflicting answers, or do not compare all the techonolgies asked above. thanks in advance!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
也许您只是因为科技行业缺乏通用术语而感到沮丧,但这是我的尝试:
Web 容器 - 这可能与下面的应用程序服务器相同,但专门针对 Web应用程序。
网络服务器 - 即 Apache、IIS 等。通过网络提供内容。也可用于指代通过网络提供内容的硬件。即“我可以访问数据库,但 Web 服务器不会响应我的 ping”。
servlet 容器 - 即 Tomcat、Jetty、Weblogic 等。这是 Java 特定术语。它指的是实现java servlet规范的东西。
应用程序服务器 - 即 Weblogic、Websphere、Tomcat 等。部署应用程序的地方(java 领域的 war/ear 文件)。 Servlet 容器是一种应用程序服务器。应用程序服务器还可以执行其他操作,例如处理消息传递。应用程序服务器充当应用程序与其周围环境之间的一层。
Web 框架 - 用于更轻松地编写 Web 应用程序的框架/库。如果您愿意,您可以编写裸 servlet,但是像 struts/tapestry/wicket/etc 这样的框架可能会让它变得更容易。某些框架可能针对特定的应用程序服务器。
网络平台 - 我将其定义为一种带有应用程序服务器的网络框架 - 即一切都在一个盒子里。您还可以使用这个术语来指代诸如允许您构建网站的内容管理系统之类的东西 - 即 Drupal
Maybe you're just showing your frustration at the lack of common terminology in the tech industry, but here's my stab at it:
web container - This is probably the same as application server below, but specifically for web applications.
web server - i.e. Apache, IIS, etc. Serves content over the web. Can also be used to refer to the hardware that serves content over the web. i.e. 'I can get to the database but the web server won't respond to my ping'.
servlet container - i.e. Tomcat, Jetty, Weblogic, etc. This is a Java specific term. It refers to something that implements the java servlet specification.
application server - i.e. Weblogic, Websphere, Tomcat etc. Somewhere where you deploy your applications (war/ear files in java land). Servlet containers are a type of application server. Application servers may also do other things like handle messaging. The application server acts as a layer in between your application and the environment around it.
web framework - A framework/library that you use to write web applications more easily. You can write bare servlets if you want, but frameworks like struts/tapestry/wicket/etc will probably make it easier. Some frameworks may target a particular application server.
web platform - I would define this as a type of web framework that comes with an application server - i.e. everything comes in the one box. You could also use this term to refer to things like content management systems that let you build web sites - i.e. Drupal