2.1. Jetty配置概述
对于Web服务器来说,可配置性是一项非常重要的指标(从软件设计层面,我们也可以称之为架构要素),它在很大程度上也会影响一款服务器的适用范围。之所以这么说,是因为真实的部署场景千变万化,只有做到灵活可配,我们才可以对其进行深度定制(调整内存分配、链接限制、I/O、安全配置等等),从而使服务器能够最大程度的满足我们不同的运维部署要求。
作为轻量级Web服务器及Servlet容器的代表,Jetty提供了出色的可配置能力,通过本章的讲解,你会充分了解其强大、便捷的配置。而且Jetty的配置方案也在架构上为我们应用程序模块化架构提供了一个不错的范本。
对于Jetty来说,其提供的配置内容与Tomcat类似,主要分为四部分:
- 服务器启动配置,主要是启动命令参数,如环境变量、JVM参数和加载模块等。
- 服务器定义配置,如链接器、Servlet容器。Jetty启动时,将会根据这些配置文件实例化服务器对象。相对于Tomcat对Catalina容器的配置,Jetty已经拆解为多个独立的模块配置。
- Web应用配置。与Tomcat类似,Jetty也支持对每个部署应用提供独立的配置文件,用于描述其Context路径、部署包等信息。
- Servlet规范配置,即我们熟知的WEB-INF/web.xml。
但是在具体的配置文件组织形式和加载上,Jetty和Tomcat体现了两种不同的架构理念。
Tomcat对于每一部分的配置都采用集中式管理,主要配置文件都包含在conf目录下。之所以如此,是由于Tomcat采用传统架构模式,而且这种方案操作更加方便,