一、 确认磁盘空间是否满足要求
1、 WebSphere 应用服务器自身代码的占用空间。这个空间一般在1G左右,在不同的系统平台上略有差异。 
2、 概要文件所占的空间。WebSphere应用服务器V6.1创建的概要文件基本类型有3种,每个概要文件所占用的空间如下:应用程序服务器(Application Server):在WebSphere应用服务器安装没有选择安装样本程序时,这一概要文件所占磁盘空间约为200M;Deployment Manager:30M;定制概要文件(Custom,即node agent):10M。 
3、 如果要安装WEB服务器,则在WEB服务器所在服务器上要预留WEB服务器所占的磁盘空间。IBM HTTP服务器一般占用110M左右的空间。 
4、 如果安装WEB服务器,则在WEB服务器所在机器上通常也要安装Web Server Plug-in组件,该组件所占磁盘空间约为200M。 
5、 WebSphere 应用服务器系统日志的占用空间。日志空间的估算要结合系统对日志的配置情况。WebSphere应用服务器的主要日志有SystemOut.log,SystemErr.log。我们可设置日志文件的大小和保存的历史日志文件数量,从而可以估算出其需要的空间。
6、 如果有WEB服务器,需考虑WEB服务器的日志空间。如果客户开启了WEB服务器的访问日志access.log(默认开启),此日志增长的速度极快,要预留足够的空间。 
7、 备份文件需要的空间。WebSphere应用服务器提供了一个备份命令(backupConfig.bat/sh),用来备份应用服务器的配置及其上应用。我们建议在系统稳定之后及时备份。对于一个典型生产系统,WebSphere应用服务器这个配置文件经常超过100M。可在发出backupConfig命令时,使用-logfile参数指定该备份文件的存放位置。 
8、系统出错时日志,例如,JVM在发生OutOfMemory时,在大多数平台上WebSphere应用服务器会默认写javacore文件和heapdump文件,记录错误出现时的JVM Heap、线程情况,以备错误诊断使用。虽然可以调整应用服务器参数使之不产生此类文件,但为了分析问题,通常需要从此类文件入手。这类文件通常都特别大,例如heapdump文件,可能达到几百M。如果多次出现OutOfMemroy,对磁盘空间的占用很快。因此,必须考虑为此类文件预留磁盘空间。 
9、 WAS安装程序还需要在系统的临时目录/tmp中有100M以上的空闲空间。 
10、 用户发布到WebSphere应用服务器上所有应用程序以及应用自身的应用日志的占用空间。这个大小与实际应用相关,而且不同应用可以差别很大。 
二 性能设置
1、 Java虚拟机堆大小(JVM Heap Size): 控制JVM代码可使用的堆大小,单位M。该参数在服务器->应用程序服务器>进程定义>Java虚拟机中进行设置。JVM最大堆大小默认是256M,在生产环境中通常要根据机器物理内存情况、应用运行特性来设置,且多数情况下都要把此参数调大。根据经验,内存充足时,通常的调整在500M到1024M之间。需要注意的是,建议JVM Heap的最大值不要超过1024M,如果JVM Heap Size过大,可能会引起内存分页,或者造成JVM垃圾回收时间过长,反而影响应用服务器性能。有关Java虚拟机调优的具体信息,请参考调整JVM参数。 
2、 Web容器线程池:该参数在“服务器 > 应用程序服务器 > server1 > 线程池”的“WebContainer”中进行设置,默认值是10到50。如果硬件资源允许,通常会把线程池的最大大小调到100。 
3、 数据源连接池:该参数在资源->JDBC->数据源->数据源名称,选择“连接池设置”中设置,默认大小为1到10。根据资源设置的队列(Queue)原则,从Web容器线程池,到数据源连接池的参数设置,应该是从大到小的管道。前面我们列举了Web容器线程池的最大值设置100,对于数据源连接池,设置的最大值通常不超过50。多数情况下调整为30。实际运行中可以修改此参数值,观察调整对性能是否有正面影响。注意,如果把数据库连接池最大大小调得过大,JVM有限的资源都耗费在维护连接池、处理与数据库连接上,可能反而造成WAS性能的下降。 
4、 WAS 进程日志参数:WAS进程日志常用的有SystemOut.log和SystemErr.log。这两份日志默认大小为1M,历史日志文件数为1份。在生产环境中,这样的设置通常不足以充分保存发生问题时的错误信息。我们可以通过修改日志默认大小、历史日志文件数来保存更多的信息。注意,不要把单份日志文件大小设置过大(例如,超过10M以上),否则可能影响WAS性能。另外,我们建议把应用日志与WAS日志分离开。如果应用中大量以System.out.print或者System.err.print来保存应用状态日志,也可能会影响服务器性能。 
5、 Heapdump文件:前面我们提到,Heapdump文件对磁盘空间占用很快,因此,可以设置IBM_HEAPDUMP参数把Heapdump文件存放到指定目录下。 
6、 Web服务器的访问日志access.log:IBM Http Server的访问日志access.log默认是打开的,其中记录了经过Http服务器的请求信息。在高并发的系统中,这一日志增长非常过,当日志过大时,可能占用过多磁盘空间或引起性能下降,如果您的系统不需要这份日志,或者有其他技术手段保存用户访问信息,可以关闭该日志。具体做法为:打开IBM Http Server安装目录/conf目录下的httpd.conf文件,搜索CustomLog,把CustomLog所在行用#注释掉即可。
三、常见的日常管理任务
1、查看/更改应用服务器端口
? 更改应用访问端口 
默认情况下,WAS的管理控制台和应用访问是两个不同的端口。访问WAS的管理控制台或者WAS上部署的应用,所使用的端口由应用服务器端口以及虚拟主机决定。假设我们要把应用访问的端口从9080变成9082(实际工作中,如果没有Web服务器,有的环境会希望把应用访问端口变成80,方法类似),则按如下步骤进行:登陆WAS管理控制台,选择 左边菜单 服务器 - 应用服务器,点击 server1,选择“端口”,点击“WC_defaulthost”(如图8),修改端口为自己想要的任意端口(注意避免端口冲突),例如,9082。然后点击“确定”。然后“保存”。
? 更改WAS管理控制台端口 
登陆WAS管理控制台,选择 左边菜单 服务器 - 应用服务器,点击 server1选择“端口”。然后更改WC_adminhost为自己希望的管理控制台端口。然后点击“确定”、“保存”。选择 左边菜单 环境 - 虚拟主机,点击;然后选择admin_host,选择“主机别名”。把原有端口9060改成与前面应用服务器/端口/WC_adminhost一致的端口,例如,9063。或者点击“新建”,创建一个主机别名 *, 9063。然后“确定”,“保存”。目的就是要让 应用服务器/端口/WC_adminhost的端口出现在 虚拟主机/admin_host的主机别名列表中。 
2、管理安全性
(1)启用管理安全性 
启用管理安全性将激活用于防止未经授权的用户使用服务器的设置,简单来说,进入管理控制台、更改应用服务器配置、停止应用服务器进程这些管理任务,都需要输入预先定义的用户名和密码才能完成。缺省情况下,创建概要文件时会启用管理安全性(图9)。如果在创建概要文件时没有选择“启用管理安全性”,在随后使用过程中又希望启用,则可按如下步骤进行:
首先进入控制台,例如:http://was_ip:9060/admin,注意这里登陆的用户一定要是设置安全性的用户。例如,admin。选择“安全性”>“安全管理、应用程序和基础结构”,然后点击“安全配置向导”(图10)。为了配置的简便性,在“指定保护范围”中,可以不选择“使用 Java 2 安全性来限制应用程序访问本地资源”;在“选择用户存储库”中接受默认选项,用户存储库为“联合存储库”,点击“下一步”;在配置用户存储库中填入用户名、密码。如果您是第一次启用管理安全性,则输入一个新的用户名(您登陆管理控制台的用户名)和密码。这个用户名密码是任意的,并不要求是操作系统用户,因为联合存储库默认的用户条目来自于文件;如果以前曾经使用该存储库启用过管理安全性,则使用存储库中持有管理员特权的用户名和密码。点击“下一步”、“完成”。保存之后重启应用服务器,这时登陆管理控制台等就需要提供您预定义的用户名/密码了。
(2)停用管理安全性 
停用管理控制台很简单,在图10所示页面,不选择“启用管理安全性”,点击“应用”,保存并重启应用服务器即可。有一种特殊情况下,特如忘掉了管理员密码,此时我们无法登陆管理控制台,从而无法在管理控制台中停用管理安全性。这时,可从$WAS_HOME/profiles/xxx概要文件名/bin目录下,发出如下命令: wsadmin -conntype NONE 。当wsadmin的命令行窗口出现之后,发出下列命令: securityoff 。上述操作在应用服务器启动或停止的状态都能发出。再次启用WAS时,就是停用管理安全性的状态了。 
(3)更改管理员密码 
当我们需要更改管理员密码时,可以选择“用户和组”>“管理用户”,如图11,在搜索内容为“*”时点击“搜索”,会列出该存储库中的所有用户。选中管理用户标识,可更改该用户的密码。更改即时生效。
(4) 停用管理安全性 
停用管理控制台很简单,在图10所示页面,不选择“启用管理安全性”,点击“应用”,保存并重启应用服务器即可。有一种特殊情况下,特如忘掉了管理员密码,此时我们无法登陆管理控制台,从而无法在管理控制台中停用管理安全性。这时,可从$WAS_HOME/profiles/xxx概要文件名/bin目录下,发出如下命令: wsadmin -conntype NONE 。当wsadmin的命令行窗口出现之后,发出下列命令: securityoff 。上述操作在应用服务器启动或停止的状态都能发出。再次启用WAS时,就是停用管理安全性的状态了。 
(5) 更改管理员密码 
当我们需要更改管理员密码时,可以选择“用户和组”>“管理用户”,如图11,在搜索内容为“*”时点击“搜索”,会列出该存储库中的所有用户。选中管理用户标识,可更改该用户的密码。更改即时生效。
(6) 忘记管理员密码 
如果忘记管理员密码,我们无法进入管理控制台更改密码。此时,需要先用“停用管理安全性”一节中wsadmin命令的方法,停用管理安全性,然后“更改管理员密码”,再次“启用管理安全性”即可。
(7) 创建更多的管理用户 
使用启用管理安全性的WAS环境时,默认情况下只有一个管理员ID,这意味着同一时刻只有一个人能登陆管理控制台。这对于多人开发小组在同一WAS环境发布测试时并不方便。您可先在存储库中创建一个用户,然后为该用户ID分配相应的管理角色。具体步骤如下:1)选择“用户和组”>“管理用户”,如图24,点击“添加”,添加一个用户ID,例如,admin1。保存。 2) 选择“用户和组”>“管理用户角色”,如图25,填入用户名(必须是在存储库中已经存在的用户名),选择相应的管理角色,例如,“管理员”。点击“确定”,保存。这样,下次重启WAS时,两个用户都能同时登陆管理控制台。
3、备份/恢复概要文件
生产环境、概要文件配置过于复杂或经常更改时,我们需要定期备份概要文件,以便必要时快速恢复。您可使用backupConfig 命令备份配置文件。例如,要备份概要文件AppSrv01的当前配置,可以从$WAS_HOME/profiles/AppSrv01/bin目录下,发出命令 backupConfig,它会将AppSrv01当前概要文件默认生成一个压缩包,您也可以指定该压缩包的名称,例如:backupConfig WebSphereConfig_2007_05_30.zip。恢复配置时,使用restoreConfig WebSphereConfig_2007_05_30.zip。
4、正确卸载WAS 
需要提醒的是,WAS的卸载过程不是直接删除目录,如果这样做,下次你可能无法在同一台机器上成功安装WAS。在卸载WAS之前,先停止机器上的WAS进程,用ps –ef |grep java确保没有was进程在运行。然后,执行WAS_HOME/uninstall/uninstall.sh命令卸载WAS。如果因为某些特殊原因卸载向导引导的卸载过程没有成功(例如,您直接删除了WAS安装目录),或者您希望在同一目录再次安装WAS,请参照信息中心“手工卸载”给出的建议。 
应用部署通常会涉及如下几个任务:配置应用所需要的环境:如系统变量、虚拟主机、类路径、安全性等等;配置应用所需要的资源如JMS资源、数据源等。其中,需要注意的是:
(1)应用打包:部署在 WebSphere 应用服务器上的应用可以是打包的*.ear/*.war文件,也可以是未打包但符合J2EE规范要求的组件。在生产环境中,推荐使用打包的*.ear/*.war文件,便于版本控制和管理。对于复杂项目中多个J2EE组件的打包,请参见文章“关于J2EE应用开发项目包的管理”。 
(2)管理 Utility Jar包:大多数J2EE应用都会有一些公用的Utility Jar包,首先要强调的是:一定要避免在同一个类载入路径下存在同一个类的多个版本!这会在实际运行中带来很多莫名其妙且难以诊断的问题。其次,对于JDBC驱动这类通用等级较高的Utility Jar包,可以放置在<WAS_HOME>/lib/ext目录下;对于多个应用共享的Utility Jar,可以放在 <WAS_HOME>/lib/ext中,也可以放在shared library(共享库)中,推荐放在shared library中;对于单个应用使用的Utility Jar,可与应用打包在一起,或放入shared library中。共享库的使用能够避免Utility Jar包多个版本的混乱,以及Utility Jar包的冲突。共享库配置方法请参见红皮书sg247304 12.5.4 Step 4: Sharing utility JARs using shared libraries章节。 
(3)Jar 包冲突:Jar包冲突问题在大型Java软件开发中经常遇到,简单的说,当不同应用使用的公用Utility Jar包、应用服务器底层的Jar包中存在同名、且版本不同的类时,我们称之为Jar包冲突。这种问题的解决办法可以参考文章如何在WebSphere中解决Jar包冲突 。 
(4 )会话超时:针对应用场景的不同,不同应用期望的会话超时时间各不相同。WebSphere应用服务器的会话管理分为Application server、Application、Web Module三个级别。顾名思义,在每个特定级别上更改的会话管理的配置,对当前级别起作用。部署在WebSphere应用服务器上的应用,默认的会话超时时间为30分钟,默认的会话管理级别是Application Server。如果您期望更改您的应用,例如,DefaultApplication的会话超时时间,可按如下步骤进行:选择应用程序>应用程序名>会话管理(图13),选择“覆盖会话管理”,并在“设置超时”中填上期望的会话超时时间。点击“确定”保存即可。 
(5)环境变量设置
当应用需要通过写Java环境变量的方式配置一些变量时,可在应用服务器启动脚本中用-D参数指定,也可以在应用程序服务器 > 应用程序服务器名(例如,server1) > 进程定义 > Java 虚拟机中设置“通用JVM参数” -Daaa=xxx。

比如:oracle驱动缺少时分秒的解决办法
应用程序服务器 > server1 > 进程定义 > Java 虚拟机 > 定制属性
下新建
-Doracle.jdbc.V8Compatible=true
解决中文乱码问题
设置ibm-web-ext.xmi文件中 autoRequestEncoding="true" autoResponseEncoding="true"
应用程序服务器 > server1 > 进程定义 > Java 虚拟机,为通用 JVM 自变量指定 -Ddefault.client.encoding=GBK

转载于:https://www.cnblogs.com/aphelion/p/5085716.html

websphere性能设置和日常维护 (转载)相关推荐

  1. PHP系统管理mongodb,MongoDB的日常维护管理

    主要介绍了日常运行维护的管理工具 MongoDB的日常维护包括使用配置文件,设置访问控制,Shell交互,系统监控和管理,数据库日常备份和恢复 启动和停止MongoDB 启动后可以通过数据库的IP加端 ...

  2. oracle日常维护(不断更新)

    基本概念 ORACLE数据库被划分成称作为表空间的逻辑区域--形成ORACLE数据库的逻辑结构.一 个ORACLE数据库能够有一个或多个表空间,而一个表空间则对应着一个或多个物理的数据库 文件.表空间 ...

  3. 邮件服务器 Postfix+ Cyrus-SASL+cyrus-IMAPD+日常维护

    一,安装Postfix postfix-2.6.5.tar.gz postfix-2.6.5-vda-ng.patch.gz 二,rpm包安装Cyrus-SASL+cyrus-IMAPD 三,Post ...

  4. MHA 日常维护命令集

    MHA 日常维护命令集 1.查看ssh登陆是否成功 masterha_check_ssh --global_conf=/etc/masterha/masterha_default.conf --con ...

  5. mysql维护 运维_MySQL运维之--日常维护操作

    MySQL运维之--日常维护操作 http://blog.csdn.net/guoyjoe/article/details/46697825 一.Linux内核和发行版本 uname -a cat / ...

  6. 3个最常见案例详解DBA日常维护

    导读:DBA的大部分工作都是围绕着对数据库的维护而展开的,常规的日常维护更是占了绝大多数.本节将围绕日常维护中最常见的三个案例展开讲解,与大家分享排查此类问题的思路. 作者:叶桦 徐浩 张梦颖 应以峰 ...

  7. 计算机联锁道岔故障处理,TYJL-II型计算机联锁系统的日常维护和故障处理.doc

    文档介绍: 目录 1.联锁系统概述 2 1.1 6502电气集中概述 2 1.1.1 6502电气集中的组成 2 1.1.2继电器的组合 3 1.1.3 6502电气集中电路结构 3 1.2联锁系统的 ...

  8. 安卓工控主板运行时会自动重启_工控机日常维护的方法与步骤

    工控机维修是一项理论知识.实践经验与操作水平的结合的工作,其技术水平决定着工控机维修质量.从事工控机维修的人员需要经常学习,了解工控机内部的电子元器件所具备的功能和特点,及各种软件和系统重装设置要求, ...

  9. 服务器安全检查指引——日常维护说明

    文档写好有一段时间了,可一直不敢上传,对服务器安全了解得越多,就越觉得自己很肤浅,很多都还没入门,发上来在这么多大神面前搬门弄斧,一不小心可能就会给劈得渣都不剩了. 在编写的过程中,有不少地方心里明白 ...

最新文章

  1. hdu 1599 find the mincost route(找无向图最小环)(floyd求最小环)
  2. python 日志模块 logging
  3. flex java类转成_Flex 与 java 通讯 【转】
  4. 微计算机和微处理器的区别,CPU和微处理器的区别
  5. android 音乐app 进度条_让这些可爱的APP成为你的生活好帮手
  6. html5中Canvas、绘制线条模糊、常见绘制工具、绘制基本图形、绘制图片、面向对象的方式绘制图形图片、绘制文本、帧动画绘制
  7. osi7层协议源代码_捍卫开放源代码的17年:立即加入OSI
  8. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之集群概念介绍(一)
  9. vim 系统剪切板及 ubuntu 无法使用 vim 系统剪贴板(或 :reg 无+号寄存器)
  10. StringBuilder 详解 (String系列之2)
  11. A* search算法解迷宫
  12. cholesky分解java代码_cholesky分解
  13. mbr mysql_主引导记录MBR的结构和作用
  14. Module “*” must not contain source root *. The root already belongs to module “*”
  15. optimizer.step()代表什么意思
  16. 盒图(N-S图)级相关例子
  17. SCI投稿及Accept之后的流程
  18. 【操作系统之考前垂死挣扎】01操作系统引论
  19. 十大机器学习算法入门
  20. 第12周 oj 逆序输出

热门文章

  1. 基于系统日志分析进行异常检测
  2. C# Minitab 合并标准差 Sigma σ
  3. airpods二代降噪吗_苹果AirPods 3及AirPods Pro 2或明年发布 AirPods Studio有望同步登场|airpods|耳机|无线耳机|麦克风...
  4. android京东ui,2019京东金机奖最佳UI、交互设计:这3款“当之无愧”
  5. 中间人攻击(MITM)姿势总结
  6. vue h5项目架构搭建
  7. 基于Python的外卖用户评价情感倾向性分析
  8. DuplicateHandle 伪句柄 与 实句柄的应用
  9. RocketMQ记录
  10. linux 查询系统CPU核数、线程数