WebSphere Application Server 环境配置与应用部署最佳实践

来源:互联网 发布:一点仓位软件官方下载 编辑:程序博客网 时间:2024/04/29 16:16
wsadmin 是 Websphere Application Server 提供的脚本工具,它支持开发人员通过脚本对服务器进行管理和配置。本文首先对 wsadmin 以及脚本语言 Jython 进行介绍,之后,本文将介绍一种通过 XML 配置文件扩展 wsadmin 以及脚本的方法,该方法允许部署人员通过 XML 文件定义服务器的配置步骤和应用部署过程,从而提高 wsadmin 以及脚本的可用性。

在发布一个运行于 WebSphere Application Server 的 J2EE 应用之前,对服务器进行配置和部署应用是必不可少的一个过程,这个过程是非常复杂的。WAS 为用户提供了可视化的管理控制台(Web Admin Console)来完成这一任务。即便如此,开发或部署人员仍需要接受培训,并花费一定的时间和精力来完成这些配置和部署工作。对于一个开发团队来说,如果每个团队成员都要手工的完成环境配置和应用部署,其代价是比较高的。

本文介绍使用 wsadmin 工具配合 Jython 脚本来完成服务器的环境配置和应用部署。配置和部署脚本一经编写,就可以多次重复使用。以自动化的脚本代替手工操作,是提高工作效率的重要一环。在此基础上,本文介绍一种使用 XML 文件对 wsadmin 命令行工具和 Jython 脚本进行扩展,从而实现服务器的环境配置和应用部署的方法。我们为该方法提供了 Jython 实现,相关的脚本已经在 WAS 6.0 和 7.0 版本上验证通过。在文章中,我们将详细阐述这种方法并简要描述 XML 文件格式。此外,本文将说明 XML 文件解析与运行模块的实现原理,以便读者能够添加所需的功能模块。

Wsadmin 工具与脚本简介

wsadmin 工具简介

wsadmin 脚本工具引入于 IBM WebSphere Application Server V5。它是一个接受脚本语言输入的非图形化管理工具,用户可以使用 wsadmin 工具执行那些可以用管理控制台执行的相同任务。

wsadmin 目前只支持 Jython 和 Jacl 两种脚本语言。本文选取 Jython 脚本作为示例代码,对使用自动化脚本进行服务器配置、管理进行说明。我们将会应用部署为例编写 Jython 脚本,即便是第一次接触 Jython 脚本的开发人员也能很快的了解并使用它们。

启动 wsadmin 工具

开发人员可以通过 wsadmin.bat(windows)或 wsadmin.sh(Linux 或 AIX)来启动 wsadmin 工具。这两类文件既可以在 WAS 概要文件的 bin 目录(${profile_root}/bin)中找到,也可以 WAS 的 bin 目录(${app_server_root}/bin)中找到。在 WAS 的 bin 目录下的启动命令在运行时需要指定 -profileName 参数,而在特定概要文件的 bin 目录下的启动命令则不用指定。

wsadmin 工具可以以交互式或批处理式两种方式运行。以交互式运行时,开发人员可以在 wsadmin 工具中运行单条命令。在 windows 系统中启动交互式 wsadmin 工具的命令如下:

  • 启动支持 Jacl 命令的 wsadmin 工具:wsadmin.bat
  • 启动支持 Jython 命令的 wsadmin 工具:wsadmin.bat –lang jython

此外,开发人员还可以通过 wsamin 工具运行批处理脚本。批处理脚本需要通过 -profile 参数指定:

  • 运行 Jacl 脚本:wsadmin.bat –profile sample.jacl
  • 运行 Jython 脚本:wsadmin.bat –lang jython –profile sample.py




回页首

Jython 语言介绍

Jython 语言是 wsadmin 目前所支持的两种脚本语言之一。Jython 解释器为脚本提供了控制流的支持以及各种辅助命令,此外,通过对 wsadmin 工具提供的脚本对象的访问,Jython 扩展了自身功能,从而使开发人员可以利用编写脚本来实现应用部署、服务器的管理和配置。

Jython 基本语法

Jython 语言是 Python 的一个 Java 实现,wsadmin 工具使用的是 Jython V2.1。Jython 是动态类型语言,开发人员不用像 Java 那样声明变量类型,因为变量的类型是运行时决定的。

Jython 的基本数据类型包括数字类型、布尔类型和字符串类型。Jython 的数字类型包括整型和浮点型:
wsadmin>a=1.33
wsadmin>print a
1.33

以上的语句将浮点数 1.33 赋给变量 a,并通过 print 命令在控制台输出变量 a 的值。Jython 中的字符串类型也与 Java 类似,不同的地方在于单引号和双引号在 Jython 中的功能是相同的:"My String" 和 'My String' 在 Jython 中被认为是一样的。Jython 为这些基本类型提供了各种运算符:布尔类型的 or 和 and 运算符、数字类型的+、-、*、/ 和%运算符以及字符串类型的+运算符。
wsadmin>print 'My '+'String'
My String

以上的语句将两个字符做连接并打印在控制台上。除了运算符,Jython 还提供了一系列字符串处理方法,其中常用的有:

  • str1.find(str2):返回 str2 在 str1 中第一次出现的位置;
  • str1.lower():将 str1 中的字符变成小写并返回;
  • str1.replace(str2, str3):将 str1 中的所有 str2 子串替换成 str3;
  • str1.split(str2):以 str2 为分隔符将 str1 分隔成列表;
  • len(str1):返回 str1 中包含的字符个数;
  • cmp(str1, str2):比较 str1 和 str2,如果相同则返回0。

在数字类型和字符串的基础上,Jython 提供了列表类型,列表中的每个元素都可以是数字类型、布尔类型、字符串或是一个子列表。开发人员可以通过中括号来创建列表:
wsadmin>list=['a','b',['c','d'],'e']
wsadmin>print list[0]
a
wsadmin>print list[2][1]
d

以上的语句创建了两个列表,其中一个包含['c','d']两个元素,同时,以该列表为第3个元素(下标为2)创建另一个列表并赋值给变量 list。Jython 也为列表类型提供了各种处理方法,其中常用的有:





本文转自IBM Developerworks中国

      请点击此处查看全文

 
原创粉丝点击