`
chhj_292
  • 浏览: 37548 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

Linux开发机上使用tomcat管理多个应用

阅读更多

Linux开发机上使用 tomcat 管理多个应用

 

本文可就《 阿里巴巴技术部新人指南- 创建简单的 WEBX 应用 》中提到的在开发机上使用tomcat 服务提供一种实现的方法。可能很多人在实现这个文档的 demo 项目时,都是在 windows 上使用的 tomcat ,我这里吧 tomcat 引入到日常的开发机中以提高工作效率。

Tomcat5.5说明

现在我们在开发机上使用的是Jboss Jboss 本身可以 run.sh 指定外置的配置来实现一个 jboss 管理多个服务,但是 tomcat 本身是没有这个能力的,他一次只能配置一个服务。但是我们可以提供一种间接的方式来实现配置个性化的服务。基本的原理就是在 tomcat 个性化的处理 conf webapps 这个目录。

我们以apache-tomcat-5.5.27 为例进行说明(略过安装 ... )。安装好 tomcat 之后,我们可以把这两个目录从根目录下移除,在 tomcat 安装目录外部定义好这两个文件夹,然后用 linux 建立一个软链接,哈哈,想必各位已经明白会发生什么事情了,我们可以对这两个外部的文件进行个性化定制(特别是 conf 下的配置文件,端口, ssi 等等)。那么 tomcat 还是一样的利用这些配置来给我们提供个性化服务了啊,间接的实现了配置分离。

下面,还有必要对conf webapps 这两个目录进行说明, conf 这个目录是 tomcat 默认配置的目录,但是 webpps 呢?要了解这个目录就要先大致了解下 conf 目录中的一些配置项目。咱们打开 conf/server.xml 配置文件,下面就本次配置用到的该配置文件的一些项目,引入 tomcat 官方的文档进行一些解释(感兴趣的可以看看,略过也无妨):

Engine

Engine 元素负责联系特定服务处理整个客户端请求。他从一个或者多个 Connectors 接受并处理所有 requests  (客户端请求) ,并且返回一个 response  响应)给 Connector最终由 Connector 返回给客户端。这种处理方式和我们 WEBX 框架中的 pipeline 处理方式很相像,甚至在 webx 的框架文档中描述了这种相似的处理方式。

我们要注意的不是这个Engine  元素,而是这个元素的一个属性: defaultHost 这个元素的值必须与 Engine 元素的子元素 Host 元素的 name 属性保持一致。很自然的,大家都会想要了解 Host 元素了吧!

Host

Host元素 定义一个默认的虚拟主机。我们真正要关心的是 appBase 这个属性 ,看看官方解释: The Application Base directory for this virtual host,原来是定义了这个虚拟主机的应用程序根目录,默认的值是 webapps ,这样一切都联系起来了吧。我们通过变换 appBase 这个属性的值,就可以任意的切换我们应用程序的目录了呀。

 

配置步骤,以webx 示例项目 workshop 为例

项目Demo 请参照:《阿里巴巴技术部新人指南 - 创建简单的 WEBX 应用》为例,哈哈,不要说没有哦,技术论坛上已经提供了(没有的同学, 这里有pdf 版本)。

好啦,不废话,下面开工咯:

进入格式的开发机下的/home/user_base/ 目录, user_base 是你自己的专有目录,可别搞错了,在这里感谢下 linux 这个多用户操作系统。

 

安装tomcat

userhome 目录下创建 /program/tomcat目录,将下载好的 apache-tomcat-5.5.27 解压至该目录下即可。

 

创建项目目录结构

创建好的目录如下所示:


project是项目的目录, deploy 是存放 tomcat 配置文件以及一下 shell 的目录。

创建项目

进入project 目录,执行: antx gen:web,这里使用的是 antx 创建项目,创建好的项目如下所示:


Src:项目源代码存储目录

Target:使用 antx 编译项目后的文件存储目录

Project.* antx 自动生成的项目配置文件,包含项目依赖以及引用的第二、第三方库信息

Antx.propertis antx 编译项目用到的一些配置项文件

 

配置tomcat

tomcat 中的 conf 目录和 webapps 目录移动至 deploy 目录下,呵呵,邪恶的方法从这里开始。以后我们打包好的项目可以拷贝至 webapps 目录下,自定义的配置可以直接在 deploy/conf 目录下进行配置。直接在 tomcat 的根目录建立这两个目录的软链接就可以了。这样我们间接的实现了针对不同的项目有不同的服务器配置,是不是和我们现在搞的 jBoss 的配置很像呢,配置好的目录结构如下:


Tomcat.sh tomcat 启动和关闭的 shell

Build.sh:编译项目,建立软链接的 shell

注:使用方式都可以使用sh shell_name userage 的方式查看使用方法。

最后上一张完整的目录结构图(看见这个蓝色的圆角长方形,大家知道我是用什么软件画的图了吧,哈哈,那就是MindManager ):


 

使用方法

我们按照《 阿里巴巴技术部新人指南- 创建简单的 WEBX 应用 》的说明,一步一步的创建好项目之后可以在project 目录中执行 antx goals=build 命令,在 project/target/ 下会生成打好的 war 包。

然后在将目录切换至deploy 目录下,执行 budil.sh ,这个 shell 。不要被这个 shell 的名字迷惑了,现在我做好的这个版本并没有使用到 antx 编译项目,当然,加进去也是很容易的。 注意:这个shell 的第 22 行,相信熟悉 shell 的一看就知道,这一行是指定建立软链接的目录,如果你部署不成功,很有可能是软链接建立的目录不对,因为项目目录是千变万化的!

如果不确定有没有执行成功这个build 命令,可以在 webapps 中用 ll 命令查看一下,如果建立的软链接红光闪闪,那么恭喜你,你的 软链接建立错误 ,很有可能是上一步有误哦。现在我们只需要执行sh tomcat.sh start 命令就可以启动 tomcat 了。

 

 

后记

其实我我做的这些工作只是一个抛砖引玉的作用,为tomcat 在开发机上的应用提供了一种实现的方式,毕竟 Jboss 的学习成本大大的高于 Tomcat 这个轻量级的 web 服务器。现在我做的这个还不是很完善,希望大家使用过后多提意见我好进一步改善。

有什么问题联系:

旺旺中国站:alijaver

邮件:mailer.cheng@gmail.com

  • 大小: 4 KB
  • 大小: 4.8 KB
  • 大小: 3.9 KB
  • 大小: 14.4 KB
分享到:
评论
1 楼 chhj_292 2009-08-07  
shell和文档都打包放在了附件里!

相关推荐

    linux下部署tomcat应用程序和基本优化原则

    Tomcat 是一个基于 Java 的开源 Web 应用服务器,广泛应用于企业级 Web 应用程序中。部署 Tomcat 应用程序需要了解 Linux 环境和 Tomcat 的配置文件。下面将详细介绍 Linux 下 Tomcat 应用程序的部署和基本优化原则...

    tomcat之Linux版

    总的来说,Linux上的Tomcat部署涉及到下载、解压、配置环境变量、安全设置、启动脚本、防火墙规则以及日志和性能管理等多个环节。每个环节都需要仔细处理,以确保Tomcat能够在Linux环境下稳定高效地运行。

    tomcat8安装包(含windows和linux版本).zip

    此外,由于其开源和跨平台的特性,Tomcat成为了很多开发和生产环境中的首选应用服务器。 在部署应用程序时,用户通常将WAR文件复制到Tomcat的webapps目录下,Tomcat会自动解压并加载应用。也可以通过管理工具(如...

    Linux下apache-tomcat

    总结,Linux环境下的Apache Tomcat 5.5.28安装和配置涉及多个步骤,包括环境准备、下载解压、配置环境变量、启动和停止服务、验证安装以及部署Web应用。通过这些操作,你可以在Linux服务器上搭建一个高效稳定的Java ...

    apache tomcat7 linux tomcat7

    总的来说,Apache Tomcat7在Linux上的部署和管理是一个涉及多方面知识的过程,需要理解操作系统、网络、Java以及Web服务相关的概念。正确配置和优化Tomcat,可以确保你的Java Web应用高效、稳定地运行。

    Linux版本的tomcat和jdk

    在IT行业中,Linux操作系统因其稳定性和安全性而广泛应用于服务器领域,而Tomcat和JDK则是开发和运行Java Web应用的关键组件。在这个特定的压缩包文件中,包含了针对Linux环境的Tomcat 7和JDK 1.7版本,这两个组件在...

    nginx实现多个tomcat7直接session共享所需jar包

    标题中的“nginx实现多个tomcat7直接session共享所需jar包”指的是在分布式系统环境中,使用Nginx作为反向代理服务器,将用户请求分发到多个Tomcat7应用服务器上,同时实现用户会话(Session)在这些服务器之间的...

    tomcat7;linux 64位版本

    总之,Apache Tomcat 7在Linux 64位系统上的使用,为开发者和管理员提供了强大的Java Web应用托管平台,其官方源的可靠性保证了系统的安全性和稳定性。通过以上步骤和最佳实践,用户可以顺利地在Linux环境中部署和...

    使用Tomcat搭建WEB开发环境

    总之,搭建Tomcat Web开发环境涉及下载、解压、配置环境变量、启动服务、部署应用等多个步骤。熟练掌握这些操作,对于Java Web开发者来说是基础技能,也是提高开发效率的关键。在实践中不断探索和学习,你将能更好地...

    ant远程调用shell,启动linux上的tomcat

    本文将深入探讨如何使用Ant工具进行远程调用Shell脚本,以启动Linux服务器上的Tomcat应用服务器。Ant是一个基于Java的任务执行工具,常用于构建和管理Java项目。而Tomcat是一款广泛使用的开源Servlet容器,适用于...

    同一台机不同IP不同tomcat.zip_boarddua_tomcat 多IP_tomcat绑定ip

    标题"同一台机不同IP不同tomcat.zip_boarddua_tomcat 多IP_tomcat绑定ip"以及描述"在同一台物理机上进行多IP配置并绑定到多tomcat上,可使用同一端口通信",明确指出了这个主题是关于在单个机器上配置多个Tomcat实例...

    最新版linux apache-tomcat-7.0.104.tar.gz

    【标题】"最新版Linux Apache Tomcat 7.0.104.tar.gz" 提供的是Apache Tomcat服务器软件在Linux平台上的一个特定版本。Apache Tomcat是一款开源的应用服务器,主要用于部署Java Servlets和JavaServer Pages(JSP)。...

    tomcat 7 for Linux

    总结,Apache Tomcat 7.0.75 for Linux是开发和部署Java Web应用的关键组件,其在Linux环境下的配置和管理涉及多个层面,包括安装、配置、安全管理、日志监控以及故障排查。通过理解和掌握这些知识点,开发者可以...

    Linux+JDK+Tomcat+Oracle

    在IT领域,构建一个高效、稳定的企业级应用环境往往涉及到多个技术组件的集成与配置。本文将基于“Linux+JDK+Tomcat+Oracle”这一主题,深入解析如何在Linux操作系统下安装配置JDK(Java Development Kit)、Apache ...

    apache-tomcat7.0.100windows和linux版本安全版本.zip

    2. **虚拟主机**:如果你需要在同一台服务器上托管多个网站,可以通过`Host`元素在`server.xml`中配置虚拟主机。 3. **日志管理**:Tomcat的日志文件位于`logs`目录下,可以根据需求调整日志级别和存储位置。 4. *...

    tomcat的linux的7 8 9版本汇总

    9. 虚拟主机:如果需要部署多个网站,可以通过配置多个元素实现。 10. 监控与性能调优:使用JMX(Java Management Extensions)监控Tomcat,调整JVM参数以优化性能。 总结起来,这个压缩包提供了一个全面的Tomcat...

    最新版linux apache-tomcat-9.0.36.tar.gz

    【Apache Tomcat 9.0.36:Linux上的Java应用服务器】 Apache Tomcat是一款开源的、免费的Java Servlet容器,用于部署和运行Java Web应用程序,特别是那些基于Java EE(现在称为Jakarta EE)规范的Web应用。在这个...

    最新版linux apache-tomcat-8.5.66.tar.gz

    了解其安装、配置和管理的细节是每个IT专业人员必备的技能,这不仅涉及基本操作,还包括安全、性能优化和故障排查等多个方面。通过深入理解这些知识点,你将能够更有效地管理和维护你的Tomcat服务器。

Global site tag (gtag.js) - Google Analytics