`
Dead_knight
  • 浏览: 1200895 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
博客专栏
752c8642-b795-3fe6-946e-a4e845bffdec
Spring Securi...
浏览量:240185
33caa84e-18a6-3036-a82b-6e2106a4de63
clojure专题
浏览量:48911
E17ca077-44df-3816-a3fe-471c43f6e1e5
WebLogic11g
浏览量:236861
社区版块
存档分类
最新评论

WebLogic11g-常用运维操作

 
阅读更多
希望这篇能把weblogic运维时经常遇到的问题、常用的配置汇总到一起。
1、配置jvm参数:
一般在domain启动过程中会看到以下启动的日志信息,如下图所示:

图中红色方框部分为启动weblogic domain的命令。其中包括了jvm参数以及classpath信息。
【注意】
java -client是由于之前建立的domain是开发模式的。生产模式的话,这里执行的是java -server。至于-client与-server的区别,大家去google下吧,这里不介绍了。

那如何修改这个配置呢?
找到setDomainEnv.cmd文件(linux下面就是setDomainEnv.sh了),
位置为:weblogic11\user_projects\domains\example\bin\setDomainEnv.cmd
修改文件中的MEM_ARGS部分,相关参数配置如下:
call "%WL_HOME%\common\bin\commEnv.cmd"

set WLS_HOME=%WL_HOME%\server

if "%JAVA_VENDOR%"=="Sun" (
	set WLS_MEM_ARGS_64BIT=-Xms256m -Xmx512m
	set WLS_MEM_ARGS_32BIT=-Xms256m -Xmx512m
) else (
	set WLS_MEM_ARGS_64BIT=-Xms512m -Xmx512m
	set WLS_MEM_ARGS_32BIT=-Xms512m -Xmx512m
)

set MEM_ARGS_64BIT=%WLS_MEM_ARGS_64BIT%

set MEM_ARGS_32BIT=%WLS_MEM_ARGS_32BIT%

if "%JAVA_USE_64BIT%"=="true" (
	set MEM_ARGS=%MEM_ARGS_64BIT%
) else (
	set MEM_ARGS=%MEM_ARGS_32BIT%
)

set MEM_PERM_SIZE_64BIT=-XX:PermSize=128m

set MEM_PERM_SIZE_32BIT=-XX:PermSize=48m

if "%JAVA_USE_64BIT%"=="true" (
	set MEM_PERM_SIZE=%MEM_PERM_SIZE_64BIT%
) else (
	set MEM_PERM_SIZE=%MEM_PERM_SIZE_32BIT%
)

set MEM_MAX_PERM_SIZE_64BIT=-XX:MaxPermSize=256m

set MEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=128m

if "%JAVA_USE_64BIT%"=="true" (
	set MEM_MAX_PERM_SIZE=%MEM_MAX_PERM_SIZE_64BIT%
) else (
	set MEM_MAX_PERM_SIZE=%MEM_MAX_PERM_SIZE_32BIT%
)
if "%JAVA_VENDOR%"=="Sun" (
	if "%PRODUCTION_MODE%"=="" (
		set MEM_DEV_ARGS=-XX:CompileThreshold=8000 %MEM_PERM_SIZE% 
	)
)

@REM Had to have a separate test here BECAUSE of immediate variable expansion on windows

if "%JAVA_VENDOR%"=="Sun" (
	set MEM_ARGS=%MEM_ARGS% %MEM_DEV_ARGS% %MEM_MAX_PERM_SIZE%
)

if "%JAVA_VENDOR%"=="HP" (
	set MEM_ARGS=%MEM_ARGS% %MEM_MAX_PERM_SIZE%
)

if "%JAVA_VENDOR%"=="Apple" (
	set MEM_ARGS=%MEM_ARGS% %MEM_MAX_PERM_SIZE%
)

@REM IF USER_MEM_ARGS the environment variable is set, use it to override ALL MEM_ARGS values

if NOT "%USER_MEM_ARGS%"=="" (
	set MEM_ARGS=%USER_MEM_ARGS%
)

主要就是修改-Xms、-Xmx、-XX:PermSize、-XX:MaxPermSize的参数(视具体硬件、JVM负载情况进行修改)。如果需要设置-Xss等其它相关参数,也可添加到最后的MEM_ARGS中。
这里需要注意的是有个32位、64位的区别。实际上具体采用哪种配置,可查看文件:
weblogic11\wlserver_10.3\common\bin\commEnv.cmd
找到set JAVA_USE_64BIT=false配置,即表示非64位环境。

2、配置weblogic的线程队列:
如果大家用过weblogic8的经典版本,那么肯定知道,里面有个线程队列数的配置。可是在现在的版本中已经取消了,而采用自调整策略,根据当前请求数调整为适应的线程数。最开始分配6个执行线程,具体在哪里看呢?
首先登录domain的console,然后依次选择【环境-》服务器-》AdminServer-》监控-》线程】,如下图所示:

如果我想调整线程的最小、最大数量,怎么做呢?往下看:
查看startWebLogic.cmd启动脚本文件,不是domain下面的,具体位置是:
weblogic11\user_projects\domains\example\bin\startWebLogic.cmd
找到下面的语句进行修改,修改之后为:
if "%WLS_REDIRECT_LOG%"=="" (
	echo Starting WLS with line:
	echo %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% -Dweblogic.threadpool.MinPoolSize=80 -Dweblogic.threadpool.MaxPoolSize=80 -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy %JAVA_OPTIONS% %PROXY_SETTINGS% %SERVER_CLASS%
	%JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% -Dweblogic.threadpool.MinPoolSize=80 -Dweblogic.threadpool.MaxPoolSize=80 -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy %JAVA_OPTIONS% %PROXY_SETTINGS% %SERVER_CLASS%
) else (
	echo Redirecting output from WLS window to %WLS_REDIRECT_LOG%
	%JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% -Dweblogic.threadpool.MinPoolSize=80 -Dweblogic.threadpool.MaxPoolSize=80 -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy %JAVA_OPTIONS% %PROXY_SETTINGS% %SERVER_CLASS%  >"%WLS_REDIRECT_LOG%" 2>&1 
)

在java命令后面增加两个参数,分别是:
-Dweblogic.threadpool.MinPoolSize=80
-Dweblogic.threadpool.MaxPoolSize=80
80表示执行的线程数,这里仅仅是举例,视具体情况而定。如果不知道怎么设置,就不要瞎折腾了,还是让weblogic自己调整吧。
修改之后,重启domain,查看线程情况,如下图所示:

已经明显看到线程总数以及活动、空闲线程数量了。
一般在运维过程中,经常会查看这个界面,以实时掌握当前服务器的负载情况。

3、日志配置:
默认情况下,weblogic的相关日志的存放位置是:
weblogic11\user_projects\domains\example\servers\AdminServer\logs
这个日志文件夹里面主要包括两种日志
AdminServer的日志:AdminServer.log(weblogic启动过程中打印出来的日志)
Http的日志:access.log(http请求的日志)

web应用的日志存放位置是:
weblogic11\user_projects\domains\example\logs
这里主要就是web应用里面输出的日志文件了

如果想配置日志,怎么做呢?
登录domain的console,然后依次选择【环境-》服务器-》AdminServer-》日志】,如下图所示(包括两类日志的配置):


看这个截图,是不是觉得weblogic的console很好很强大?

4、端口配置(第一篇挪过来的,放在这里比较合适):

如图所示,依次选择【环境-》服务器-》AdminServer-》配置-》一般信息-》监听端口】,修改7001为其它的端口,并且点“保存”按钮即可完成。
也可以在weblogic11\user_projects\domains\example\config\config.xml中进行手动修改,找到server节点,增加listen-port节点,如下:
<server>
  <name>AdminServer</name>
  <ssl>
    <enabled>false</enabled>
  </ssl>
  <listen-port>7001</listen-port>
  <listen-port-enabled>true</listen-port-enabled>
  <listen-address></listen-address>
  <java-compiler>javac</java-compiler>
  <client-cert-proxy-enabled>false</client-cert-proxy-enabled>
  <server-diagnostic-config>
    <wldf-diagnostic-volume>Low</wldf-diagnostic-volume>
  </server-diagnostic-config>
</server>



5、修改管理账号、口令:
domain创建之后,会在以下位置创建boot.properties文件(注意:这个位置与weblogic之前的8、9版本有区别)
weblogic11\user_projects\domains\example\servers\AdminServer\security
首先修改boot.properties,如下:
username=weblogic
password=22222222

这里是明文,但是weblogic启动加载该文件后,会自动通过加密处理。
修改完成之后,在控制台中依次进入:
安全领域-》myrealm-》用户和组-》weblogic-》口令。输入新的口令即可(需要与boot.properties中配置的一致,如22222222)
(如果需要修改账号,需要在用户和组中建立账号,并且赋予管理员权限即可)
以上两步完成之后,重启服务即可。

暂时就想到这么些了,像一些复杂的配置,放在后面单独讲了(比如:ssl、jaas、sso等)
7
6
分享到:
评论
5 楼 linxi1711 2016-10-14  


public class GcTest {
    private static final int _1MB= 1024 * 1024;  //绾?m
      
        public static void main(String[] args) { 
           //鎬诲叡绾?m澶氾紝鍫嗗ぇ灏忚缃笉瓒呰繃8388608B鍗?.388608m灏变細鍐呭瓨婧㈠嚭锛屼絾鏄渶瑕佹暣鏁帮紝灏忎簬8M灏变細閲嶇幇杩欎釜閿欒
            byte[] a1, a2, a3, a4,a5,a6,a7,a8,a9;  
            a1 = new byte[2 * _1MB];  
            a2 = new byte[2 * _1MB];  
            a3 = new byte[2 * _1MB];  
            a4 = new byte[2 * _1MB];  
            a5 = new byte[2 * _1MB];  
            a6 = new byte[2 * _1MB];  
            a7 = new byte[2 * _1MB];  
            a8 = new byte[2 * _1MB];  
            a9 = new byte[1000000 * _1MB];  
            }  
}





4 楼 Dead_knight 2013-09-13  
yzsunlight 写道
线程队列 的作用具体是什么

就是设置web容器可以有多少线程来为请求服务。比如说设置为100个,那么同时只有100个http请求被处理。也可以理解为并发数。
3 楼 yzsunlight 2013-09-13  
线程队列 的作用具体是什么
2 楼 Dead_knight 2013-09-11  
jd2bs 写道
万一忘记console的密码  可以通过5的方法修改 

这个密码忘记了,可不是简单的修改boot.properties可以完成的。因为这个账号密码已经写入weblogic的安全存储里面了,这个文件只是加载以后,与安全存储里面的账号做比对而已。
1 楼 jd2bs 2013-09-11  
万一忘记console的密码  可以通过5的方法修改 

相关推荐

    WebLogic11g-负载分发

    WebLogic11g-负载分发WebLogic11g-负载分发WebLogic11g-负载分发WebLogic11g-负载分发

    weblogic CVE-2018-3191 exp(含weblogic-spring-jndi-10.3.6.0.jar)

    自用CVE-2018-3191 weblogic反序列化exp。

    weblogic11g 生产环境运维手册

    本文详细指导你在生产环境中对weblogic的完整运维操作,包含系统监控、weblogic维护,以及异常问题的解决方案,适合所有朋友,没有高低之分

    Weblogic-CVE-2019-2725补丁升级方法.docx

    WebLogic Server是一款由甲骨文公司开发的企业级应用服务器,它为构建、部署和管理企业级Java应用程序提供了全面的平台。然而,随着技术的发展,安全漏洞的出现是不可避免的。在2019年,WebLogic Server被发现存在一...

    常用weblogic运维手册

    《常用WebLogic运维手册》是一份针对Oracle WebLogic Server 11g版本的运维指南文档。它旨在帮助运维人员解决日常工作中常见的问题,并提供一系列实用的操作技巧。本文档主要关注WebLogic Server 11g版本的维护和...

    K8 weblogic-CVE-2018-2628-getshell

    【K8 weblogic-CVE-2018-2628-getshell】是一个针对Oracle WebLogic Server的渗透测试工具,主要用于检验系统是否存在CVE-2018-2628漏洞并利用该漏洞获取shell权限。这个工具的使用应该严格限制在合法的安全测试环境...

    联动北方-企业级IT运维宝典之WebLogic实战

    《联动北方-企业级IT运维宝典之WebLogic实战》是一本深入探讨WebLogic服务器运维技术的专业书籍。WebLogic作为Oracle公司的一款企业级Java应用服务器,广泛应用于大型企业的核心业务系统,因此掌握其运维知识对于IT...

    weblogic10.36 CVE-2018-2893补丁文件

    WebLogic(CVE-2018-2893)安全漏洞预警,oracle官方发布了2018年4月份的关键补丁更新CPU(CriticalPatchUpdate),其中包含一个高危的Weblogic反序列化漏洞(CVE-2018-2628),因该漏洞修补不善导致被绕过。...

    解决weblogic部署JAX-WS需要的配置文件

    WebLogic作为一款强大的Java EE应用服务器,支持JAX-WS标准,但正确配置和部署这些服务需要一些额外的步骤。本指南将详细介绍如何解决这些问题,并提供必要的配置文件和操作步骤。 首先,我们需要了解JAX-WS的工作...

    WebLogic CVE-2019-2725补丁.zip

    weblogic反序列化补丁包

    WebLogic11g-EJB部署

    【WebLogic11g-EJB部署】是关于Java企业级应用服务器WebLogic 11g中部署Enterprise JavaBeans(EJB)的技术要点。EJB是Java EE(企业版)平台的核心组件之一,用于构建可扩展、安全且事务处理能力强的企业级后端服务...

    weblogic-CVE-2023-21839-JNDIExploit-1.4-SNAPSHOT.jar

    weblogic-CVE-2023-21839-JNDIExploit-1.4-SNAPSHOT.jar

    WebLogic11g-单双向SSL配置(以Springside3为例)

    WebLogic 11g是一款由Oracle公司开发的企业级Java应用服务器,它提供了全面的Java EE应用程序部署和管理功能。在企业环境中,为了确保数据传输的安全性,常常需要配置SSL(Secure Socket Layer)或其更新版本TLS...

    weblogic运维手册

    《WebLogic运维手册》是一份全面介绍WebLogic服务器运维的指南,主要针对WebLogic技术的基础运维工作进行深入探讨。WebLogic是由Oracle公司提供的一个企业级Java应用服务器,它支持Java EE标准,广泛应用于大型企业...

    叱咤风云 WEBLOGIC企业级运维实战-全本391页

    叱咤风云 WEBLOGIC企业级运维实战--全本391页,这个PDF挺清晰的。

    Oracle-Weblogic-11g-基础知识.pptx

    Weblogic Server 11g 是一个基于 Java EE 5 规范的应用服务器,提供了领先的可靠性、可用性、可扩展性和业界领先的性能。它支持最新的 Java 平台、企业版 5(Java EE 5)规范及 Web 服务标准,从而可简化开发并增强...

    WebLogic-Server-11g-节点服务器配置单机版.docx

    WebLogic Server 11g 是一个企业级的Java EE应用服务器,用于部署和管理各种企业应用程序。在集群环境中,为了实现高可用性和负载均衡,通常会有多台服务器组成集群,这些服务器被称为节点。节点管理器(Node ...

    weblogic11g安装与卸载

    这里,`wls1036_generic.jar` 是 WebLogic 11g 的安装包,路径 `/home/bea/Oracle/weblogic11g/Middleware` 表示安装的目标目录。 **步骤三:** 在出现提示时按回车键进行确认。 **步骤四:** 选择安装类型。通常...

    Weblogic 11g 部署web应用程序详细图解

    ### Weblogic 11g 部署 Web 应用程序详细步骤 #### 一、手动部署 Web 应用 **1. 创建 Web 工程** - 在开发环境中(如 Eclipse 或 MyEclipse)创建一个新的 Web 工程。这通常涉及到指定工程的基本信息,例如名称...

Global site tag (gtag.js) - Google Analytics