WebSphere如何重启服务

WebSphere如何重启服务

  • WebSphere
    • 控制台页面重启服务
    • 命令重启服务
    • 发生程序死锁
    • 强制重启服务

WebSphere

WebSphere 是 IBM 的软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere 提供了可靠、灵活和健壮的软件。

控制台页面重启服务

WebSphere如何重启服务_第1张图片
WebSphere如何重启服务_第2张图片WebSphere如何重启服务_第3张图片WebSphere如何重启服务_第4张图片

命令重启服务

先切换到节点bin目录

cd /opt/IBM/WebSphere/AppServer/profiles/节点名/bin

然后执行以下命令

./startServer.sh server_name
./stopServer.sh server_name

或者

./startServer.sh server_name -username <用户名> -password <密码>
./stopServer.sh server_name -username <用户名> -password <密码>

发生程序死锁

[19-5-24 15:44:53:115 CST] 00000108 SystemOut     O 2019-05-24 15:44:53[][Thread-143] WARN [com.mchange.v2.async.ThreadPoolAsynchronousRunner] com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@8ea1429b -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
[19-5-24 15:44:53:117 CST] 00000108 SystemOut     O 2019-05-24 15:44:53[][Thread-143] WARN [com.mchange.v2.async.ThreadPoolAsynchronousRunner] com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@8ea1429b -- APPARENT DEADLOCK!!! Complete Status: 
	Managed Threads: 3
	Active Threads: 0
	Active Tasks: 
	Pending Tasks: 
		com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1cb970ea
		com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@f31aef5f
Pool thread stack traces:
	Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,]
	Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,]
	Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,]

从日志看,线程挂起在获取数据源连接的地方。问题可能是由于集群环境下获取数据源出现死锁,从而导致资源无法释放,最终线程池被耗尽,线程挂起。 最后只能重启WAS服务。

这个问题的解决办法是:在数据源里面增加一个参数 useRRASetEquals 设置为 true

添加路径:

   资源 -> JDBC -> XXX数据源->定制属性 -> 新建

增加参数: useRRASetEquals ,值为 true , 类型为 java.lang.Boolean

这个参数应该是WAS7新加的,因为加这个参数有版本要求,必须是 7.0.0.13 之后的版本,否则会报错。

强制重启服务

如果程序死锁,看见线程被挂起,线程池内存溢出,这时候在WebSphere控制台页面上往往操作非常卡,并且不能正常停止服务器,那么恭喜你,需要强制重启服务器了。
首先在Linux登陆WebSphere环境

  1. 查看WebSphere的java进程:ps -ef | grep java
  2. 然后用kill -9杀掉活跃进程:kill -9 进程ID

用ps -ef | grep java再检查一遍进程,这时候登陆WebSphere控制台页面,发现登陆不上,说明WebSphere环境已经强制关闭.

开始启动WebSphere:

  1. 启动DM服务:./startManager.sh
  2. 启动代理: ./startNode.sh
  3. 启动服务: ./startServer.sh server_name

接下来就是见证奇迹的时刻!访问WebSphere控制台页面,可以直接在页面进行启动服务,这时候你会发现,原来重启服务就是这么简单

你可能感兴趣的:(WebSphere)