停用不必要的开箱即用应用程序与服务,节省时间、强化安全性
Apache Geronimo 以可伸缩性而闻名,它使用 GBeans,允许开发人员即插即用所需的任何服务与 Web 应用程序。但 Apache Geronimo 开箱即用的发行版配套提供了一些监听端口和启动的应用程序模块的服务,包括 Web 应用程序在内,这将占用大量资源,还有可能使您的应用程序暴露于入侵者的威胁之下。本文将介绍如何停止和重启监听和应用程序服务,以及如何按照需要取消部署和重新部署各个应用程序模块及 Web 应用程序,从而有效地将 Apache Geronimo 发行版的部署调整为仅包含必要的核心服务和应用程序。
简介
Apache Geronimo 每个版本的实用性都有所增加,预载入已有下载(stock download)中的应用程序和服务同样也随之增加。尽管其价值显而易见,但每一项增强功能同时也会使 Geronimo 的启动时间大大增加,使您在停止并重新启动 Geronimo 时不得不等待更长时间。或许您认为只要不使用那些服务,它们就不会对您的计算机产生影响,但事实并非如此。服务和应用程序实际上在运行、监听,等待 Geronimo 需要它们的时机,因此占据着宝贵的 CPU 时钟周期和内存中的晶体管。
Geronimo 架构
Apache Geronimo 的架构基础包括 Geronimo JavaBeans(即 GBeans)。GBeans 是 Geronimo 应用服务器所使用的自定义 JavaBean,部分 GBeans 包含一些组件,它们构成 Geronimo 的内核。GBeans 可为保持或非保持状态,Gbeans 之间彼此交互,有效地创建 Geronimo 内核。
更快的启动速度和减少内存使用量并非创建自定义 Geronimo 发行版的惟一理由。举个例子,假如打算将 Geronimo 用做实时应用服务器,那么一定不希望任何不需要或用不到的 Web 应用程序或服务运行在 Geronimo 上。关闭不需要的服务将带来更安全的环境,其中可供潜在入侵者刺探的应用程序和服务更少。公开的服务越多,则潜在入侵者获取访问权限的 “入口” 也就越多。
本文向您展示如何停止不必要的应用程序和服务,以及如何在之后需要时重新启动它们。您将了解如何自定义已有的(stock) Apache Geronimo 发行版,目的是在引导并运行此发行版时,仅载入需要运行的那些 Web 应用程序和系统服务。最终 Geronimo 将运行在更为安全的配置与环境中,同时处理器和内存也将得到更有效的利用。
开始学习
首先,需要从 apache.org 下载最新版的 Apache Geronimo V1.0,将其解压到一个目录中 —— 下文将称之为 <geronimo-install-dir>。
Apache Geronimo 是用 Java 编程语言编写的,务必下载并安装 Sun 的 Java 运行时环境。由于 Geronio 是 Java 1.4 认证的,因此推荐 1.4.09 或更高版本(但应为低于 1.5 的版本)。
为确保正确安装所有必备软件,键入以下命令启动 Apache Geronimo 应用程序:
java -jar <geronimo-install-dir>/bin/server.jar
现在已为学习本文作好了一切准备。接下来,启动 Geronimo,查看已有安装 Geronimo 的初始统计数据。
常用 Geronimo 统计数据
首先查看一下 Apache Geronimo 的初始引导时间和内存消耗情况。图 1 展示了 apache.org 的已有下载引导所用的时间。
图 1. Geronimo 启动所用的秒数