WebSphere中设置

    技术2022-05-19  19

     

    URL:jdbc:oracle:thin:@192.168.1.16:1521:ora9i

    一 WebSphere中设置编码

    当安装了webSphere的小型机的默认编码不是GBK,  而应用程序是以GBK作为默认编码会导致一系列的乱码问题。  在这个情况下,我们可以通过webSphere的控制台设置来修正该问题。  以下webSphere简称WS,WS有WS5和WS6,两个有些不同。  WS5:  点开“服务器”节点-->应用程序服务器,找到自己应用使用的服务器。  进入,在“其他属性”中找到“进程定义”,  然后在其下的“其他属性”中找到Java虚拟机。  然后找到“一般 JVM 自变量 ”将其值设置为:-Dfile.encoding=GBK  然后保存,重新启动WS服务。注意是将WS重启。  telnet 连到服务器,stopServer.sh server1  WS6:  “服务器”-->应用程序服务器,找到自己应用使用的服务器。  WS6有不同,注意。  找到“服务器基础结构”,展开其下的“Java 和进程管理”,然后进入“进程定义”。  进入后找到“其它属性”-->“Java 虚拟机”:  将“Java 虚拟机”设置为:-Dfile.encoding=GBK

    二 WEBSPHERE配置数据库连接池

    基本介绍:

    通过WebSphere配置数据库连接池一共需要三项:

       1.配置连接驱动,在这里叫:JDBC提供程序;

       2.配置数据库连接池,在这里叫:配置数据源;

       3.配置数据库登录帐号,密码,在这里叫:J2C认证别名;

    具体操作:

    一.创建JDBC提供程序

    1.进入 资源->JDBC->JDBC提供程序;

    2.选择配置的节点;

    3.进入新建;

    4.创建新的JDBC提供程序:

       4.1 选择数据库类型(使用的数据库名称);

       4.2 选择提供程序类型; 

       4.3选择实施类型;

    5.下一步,输入数据库类路径信息:

      5.1输入数据库驱动文件的完整路径(注意:不要使用末尾斜杠文件分隔符);

    6.显示配置总结信息,完成配置JDBC提供程序,保存到主配置中;

    二.配置数据源

    1.进入 资源->JDBC->数据源;

    2.选择配置的节点;

    3.进入新建;

    4.输入基本数据源信息: 

       4.1输入数据源名,任意名称即可;

       4.2输入JNDI名称路径(如:jdbc/dataSource);

       4.3选择已有的组件管理的认证别名和XA恢复认证别名,如果需要新建选项,点击新建J2C认证别名,查看方法"新建J2C认证别名";

    5.选择JDBC提供程序,选择现有的JDBC提供程序(如果没有JDBC提供程序,可以选择创建新的JDBC提供程序)

    6.JDBC提供程序,方法参照创建JDBC提供程序);

       6.1输入数据源的特定于数据库的属性;

       6.2输入数据库名;

       6.3指定数据源的 JDBC 连接类型.此属性与数据源类中的驱动程序类型属性相对应.如果要使用类型4 JDBC 驱动程序,则将值设置为4.如果要使用类型2 JDBC 驱动程序,则将值设置为 2(在z/OS(R)平台上,类型2 驱动程序使用 RRS 并支持两阶段落实处理);

    输入服务器名称(比如输入TCP/IP:172.16.6.170),注意:此属性与数据源类中的服务器名称属性相对应.如果驱动程序类型属性设置为4,则此属性是必需的;

       6.4输入端口号,注意:此属性与数据源类中的端口号属性相对应.如果驱动程序类型属性设置为4,则此属性是必需的;

       6.5选择将此数据源用于容器管理的持久化(CMP),指定此数据源用于Enterprise bean的容器管理的持久性(CMP).此选项将导致为关系资源适配器创建与此数据源对应的CMP 连接工厂.

    7.显示配置总结信息,完成配置数据源,保存到主配置中;

    三.新建J2C认证别名

    1.进入资源->JDBC->数据源->新建->创建新的J2C认证别名 或者进入 资源->JDBC->数据源->进入已有的数据源->点击:JAAS-J2C 认证数据->新建J2C认证数据;

    2.配置常规属性:

       2.1输入别名,任意名称即可;

       2.2输入用户标识,输入数据库用户名即可;

       2.3输入密码,输入数据库密码即可;

    3.保存,添加到使用的的组件管理的认证别名和XA恢复认证别名即可.

     

     

    三  websphere参数配置

    1、更改http server的配置文件参数KeepAlive。 原因:这个值说明是否保持客户与HTTP SERVER的连接,如果设置为ON,则请求数到达MaxKeepAliveRequests设定值时请求将排队,导致响应变慢。 方法:打开ibm http server安装目录,打开文件夹conf,打开文件httpd.conf,查找KeepAlive值,改ON为OFF,其默认为ON

    2、更改http server的配置文件参数ThreadsPerChild值到更大数目,默认为50 原因:服务器响应线程的数量 方法:打开ibm http server安装目录,打开文件夹conf,打开文件httpd.conf,查找ThreadsPerChild值,默认为50,改到更大数目,视用户数多少而定,一般改到客户机数量的1.1倍,如200台,则设为220。

    3、关闭http server日志纪录 原因:http server的日志IO影响性能 方法:打开ibm http server安装目录,打开文件夹conf,打开文件httpd.conf,查找CustomLog值,找到没有注释的那行(行的开头没有符号"#"),将那行用符号"#"注释掉,以关闭日志纪录,提高处理性能。

    4、更改Websphere的服务器处理线程数 原因:线程的数量影响同时并发的请求数量 方法:打开管理控制台,依次打开目录树,服务器->server1->web容器->线程池,修改"最大大小"的值,默认是50,改到更大数目,具体视总用户数量和机器的配置而定,一般设置其等于或小于http server设置的MaxKeepAliveRequests的值。

    服务器->应用程序服务器->server1->进程定义->Java 虚拟机 初始堆大小 128 最大堆大小 512 线程池:服务器->应用程序服务器->server1->进程定义->Web 容器->线程池         最小大小 20         最大大小 100            最小/最大=1/5        数据源连接池: 资源->JDBC 提供程序->(作用域选择服务器,应用)Sybase JDBC Driver->数据源->sybase->连接池     最大连接数 30 最小连接数 10

    下配置仅供参考,实际中还需要根据项目情况和硬件环境而定! 以下调整在 WebSphere Application Server 的管理控制台进行。

    进程定义 - Java 虚拟机:

    -- 将“初始堆大小”和“最大堆大小”设为相同的值。在有 2GB 内存的系统中,建议设为 512MB。在有 4GB 内存的系统中,建议设为 768MB。

    -- 垃圾回收:在“Java 虚拟机”设置中,“一般 JVM 自变量”中设置“-Xnoclassgc”参数。

    Web 容器:

    -- 将进程优先级从20改为0,这样 会比应用程序服务器有更高的优先级。进程优先级可以在 “server1”-“进程定义”-“进程执行”中修改。

    -- 将 “Web 容器”-“线程池”的大小设为 100,并选中“允许线程分配超过最大线程大小”

    -- 在“会话管理”中将“会话超时”时间从 30 分钟改为 15 分钟

    JDBC 数据源:

    -- 将每个数据源的“语句缓存大小”设置为 0

    JDBC 连接池:

    -- JDBC 连接池大小设置为 100 -- 在数据库服务器上做相应的修改(在 DB2 中是 MAXAPPLS)

    针对数据库服务器的调整:

    -- 数据库的磁盘空间应无限制 字符编码 --默认为gb2312,复杂的中文不支持“犇”,“暟” 在JVM配置-Dfile.encoding=GBK

    WS优化的经验:

      1.Java 虚拟机初始堆大小和最大堆大小(位置: server1 > 进程定义>java虚拟机 )

      WS通常默认是256,可以适当调整最大堆为512。不过也不要调的过大,小心WS启不启来,有一次我把初始堆调成768最大堆调成了2048,当我startserver -server1 时就提示WS无法初始化,原因是内存不足,所以一定要根据机子的性能来调整

      2.web容器的线程池最小大小和最大大小

      3.Jdbc连接池属性

      这个最难把握,因为最大连接数、最小连接数、连结超时、获得时间等等都要依据数据库及网张络的性能来调整。而且获得时间、不使用超时、时效超时是互相联系的一组参数,一般来说:获得时间要小于不使用超时及时效超时,且三个不能为零,是最好的!

      4.启用servlet高速缓存

      5.语句高速缓存大小

     

     

    四 异常 

    1)sun.io.MalformedInputException 错误 

    1.打开管理控制台,找到并选择运行这个JSP的应用服务器  2.依次选择进程定义,java虚拟机,一般JVM自变量  3.添加-Dibm.stream.nio=true  4.确定,保存 


    最新回复(0)