【问题标题】:Servlet container; What is it and do I need it in my case?小服务容器;它是什么,我需要它吗?
【发布时间】:2010-05-25 14:40:04
【问题描述】:

我刚刚从我的提供商那里订购了一个 VPS。

不过我有一些问题... 我的网站使用 Solr,根据他们的网站需要以下内容:

"Solr requires Java 1.5 and an Application server (such as Tomcat) which supports the Servlet 2.4 standard"

我还需要 php 5MySql 和常用的 javascript 等... 操作系统是 Ubuntu 9.10

1- 那我需要安装什么?

2- 什么是 servlet 容器?

3- 我下载的 solr 是 Jetty 自带的。 Jetty 是 Servlet 容器吗?

谢谢

【问题讨论】:

    标签: java php javascript linux


    【解决方案1】:

    3- 我下载的solr来了 与码头。 Jetty 是 Servlet 容器?

    是的,Jetty 是一个 Web 服务器和 Servlet 容器。 servlet 容器是与 servlet 交互的 Web 服务器,您需要其中一个来托管 servlet、执行它们等。

    应用程序服务器通常托管许多其他设施,例如安全性、身份验证、Java Mail、EJB 容器等等。

    【讨论】:

    • 那我需要安装什么?我猜阿帕奇?或者是否有 MySql、Php 和所有必要应用程序附带的安装包?
    • 由于您使用的是 Ubuntu,请查看 Ubuntu 服务器指南。你描述的是一个 LAMP 堆栈(Linux、Apache、MySQL、PHP),并且有很好的文档安装这样一个堆栈help.ubuntu.com/9.10/serverguide/C/index.html
    【解决方案2】:

    PHP:超文本预处理器是一种广泛使用的通用脚本语言,最初设计用于 Web 开发以生成动态网页。 PHP 5 包含了一些新特性,例如对面向对象编程的改进支持、PHP 数据对象扩展(它定义了用于访问数据库的轻量级和一致的接口)以及许多性能增强。

    Servlet 是动态处理请求和构造响应的 Java 编程语言对象。 Jetty 是最简单/最小的 servlet 容器,可以以跨平台的方式轻松运行。这并不意味着 Solr 在 Jetty 下运行得更好,或者 Jetty 仅能用于演示,只是 Jetty 使演示设置更容易。

    用户应根据自己的需求/经验自行决定他们认为最适合其用例的 Servlet Container。对于高流量场景,投入时间来调整 servlet 容器通常会产生很大的影响。

    【讨论】:

      【解决方案3】:

      Servlet 容器基本上是 Java Servlet 和 JSP 页面的 Web 服务器。

      Tomcast 和 Jetty 都是 Servlet 容器。

      在您引用的短语中,它使用短语“应用程序服务器”与“Servlet 容器”互换。虽然 Solr 可能只需要一个 Servlet 容器,但它不应该互换使用这些术语。

      Servlet 容器只是 J2EE 应用服务器的一部分。其他一些应用服务器(也包括 Servlet 容器)是 JBossApache Geronimo; Geronimo 使用 Tomcat 或 Jetty,具体取决于您安装的集合。

      如果您还需要 PHP,那么一个 Servlet 容器是不够的……您还需要一个普通的网络服务器。

      从 Ubuntu 存储库安装 libapache2-mod-php5 模块应该会为您安装 PHP5 和 Apache 2.2。要安装 MySQL,请安装 mysql-serverphp5-mysql 软件包。

      假设您只有命令行访问权限,在 Ubuntu 上安装软件包是使用 aptitudeapt-get 程序完成的;有能力者优先。

      在安装新程序之前,您应该始终运行aptitude update,它会更新可用程序的本地索引。之后,您可以使用aptitude safe-upgrade 升级现有软件包并使用aptitude install <packagename> 安装新软件包(不带<>

      Ubuntu 通常在更新可用软件包列表方面做得很好,并且会在登录时定期告诉您某些软件包有可用的升级。由于升级几乎总是安全更新,因此最好检查它们。

      【讨论】:

      • 您能定义答案的最后一部分吗?它是如何工作的?
      • @Camran:我已经稍微更新了我的答案,包括定义 App Server 和 Servlet Container 之间的区别。另外,添加一些关于 Apache/PHP/MySQL 的说明。
      • 在服务器端 java 中,我所知道的所有应用程序服务器都包括一个 servlet 容器,以及更多。 2 我很容易意识到只有 servlet 容器是 Jetty 和 Tomcat。 Glassfish 和 Geronimo 是添加 EJB 容器、Java 消息传递服务等的开源应用程序服务器。除了本地测试之外,我还没有与 Jetty 合作过很多,但我认为 Tomcat 可能会更好地扩展。
      • @mezmo:哎呀,我的意思不是暗示应用服务器不包含 servlet 容器。改写了一下。
      • 添加了更多关于使用aptitude 升级/安装软件包的说明。
      【解决方案4】:

      我还需要 php 5、MySql 和常用的 javascript 等...操作系统是 Ubuntu 9.10

      1- 那我需要安装什么?

      PHP 使用Apache HTTPD server,JSP/Servlet 使用Apache Tomcat,Tomcat 使用mod_jk 让HTTPD 充当代理,这样您就可以在同一个站点运行PHP 和JSP。

      由于 JavaScript 是一种客户端语言,您无需在服务器端担心它。

      2- 什么是 servlet 容器?

      具有 JSP/Servlet API 实现的网络服务器。应用服务器通常不止于此。 JSP/Servlet 只是庞大的Java EE API 的一小部分。一个成熟的应用服务器实现了几乎所有的 Java EE API。

      3- 我下载的 solr 是 Jetty 自带的。 Jetty 是 Servlet 容器吗?

      是的,是的。但是它不支持 PHP。您需要用于 PHP 的 Apache HTTPD。但是我不知道如何将 Jetty 与 HTTPD 连接。

      【讨论】:

      • 如果我能用jetty就太好了,因为我对servlet容器一无所知,所以tomcat对我来说可能很难安装和使solr工作......你设法适应了吗解决Tomcat?需要时间吗?困难吗?
      • 如果您知道这些东西,这基本上很容易。这是 Solr-Tomcat 指南wiki.apache.org/solr/SolrTomcat
      猜你喜欢
      • 2011-05-10
      • 2016-09-06
      • 2011-04-05
      • 2015-01-26
      • 2011-01-15
      • 2015-09-19
      • 2010-12-08
      • 1970-01-01
      • 2016-10-17
      相关资源
      最近更新 更多