精华内容
下载资源
问答
  • 巡检问题归总

    2021-01-08 11:58:10
    问题归总 weblogic控制台修改密码 登陆控制台>安全领域>myrealm(默认)>用户和组>weblogic(默认)> 口令------->保存并激活 然后注销,使用新密码登陆 weblogic启动机制会读取boot.properties...

    问题归总

    weblogic控制台修改密码

    登陆控制台>安全领域>myrealm(默认)>用户和组>weblogic(默认)> 口令------->保存并激活

    然后注销,使用新密码登陆

    weblogic启动机制会读取boot.properties配置信息,更改密码后也需要同时更改boot.properties配置文件信息,否则下次启动就会报错。

    使用weblogic用户登陆服务器,停止服务,修改相应的boot.properties配置文件信息(一定要weblogic用户,且管理服务和受管理服务都必须修改)!

    注意:

    整体流程:控制台修改密码>登陆服务停止服务>修改配置文件信息(weblogic用户)

    root用户启动weblogic

    注意:root用户启动只能以root用户kill进程,weblogic运维人员没有root用户信息

    解决办法:

    主机人员以root用户kill掉weblogic进程,并重新赋予weblogic安装目录及子目录的weblogic用户和组。

    之前的文档中给出的解决办法:

    1、主机人员用root用户kill掉weblogic进程

    2、hastop -local -force // root用户

    3、weblogic用户启动 //weblogic 用户

    4、hastart -onenode //root用户

    控制台访问缓慢

    设置jdk随机数JAVA_HOME/jre/lib/security/java.security

    将random改为urandom或前面加/./random

    在weblogic启动脚本中添加一下参数:

    JAVA_OPTIONS="-Djava.security.egd=file:/dev/./urandom ${SAVE_JAVA_OPTIONS}"
    

    重启weblogic服务进行生效。

    CPU异常高

    情况1

    top -Hp

    查看高CPU进程中线程占用CPU情况

    如果线程都为100%,或者0%(都一样)

    使用jdk自带的jstack工具做做进程的线程转储文件,并查看:

    jstack -l <PID> >> threaddumps.log
    或者
    $JAVA_HOME/bin/jstack <PID> >/weblogic/threaddump_<PID>.out
    

    用法:

    用法:
    
    jstack[-l]<pid>(连接到正在运行的进程)
    jstack-F[-m][-l]<pid>(连接到挂起进程)
    jstack[-m][-l]<executable><core>(连接到核心文件)
    jstack[-m][-l][server_id@]<远程服务器IP或主机名>(连接到远程调试服务器)
    
    选项:
    
    -F强制执行线程转储。当JStA*PID不响应(进程挂起)时使用
    
    -m打印java和本机帧(混合模式)
    
    -我的名单很长。打印有关锁的其他信息
    
    -h或-help打印此帮助消息
    

    情况2:案例

    使用ps查找出相应7144进程,这个是gis-server-8002节点的进程,查看gis-server-8002节点日志,发现日志报java.lang.OutOfMemoryError: GC overhead limit exceeded

    ####<2018-4-18 下午04时05分27秒 CST> <Error> <HTTP> <GISWEB02> <gis-server-8002>
     <[ACTIVE] ExecuteThread: '17' for queue: 'weblogic.kernel.Default (self-tuning)'>
    <<WLS Kernel>> <> <> <1524038727238> <BEA-101017> <[ServletContext@804077561[app:GSgis module:GSgis path:/GSgis spec-version:2.5]] Root cause of ServletException.
    java.lang.OutOfMemoryError: GC overhead limit exceeded
    >
    

    查看节点堆内存配置是否过小,增大内存后重启服务,恢复应用

    注意:询问客户修改参数时是否需要审批,或他们自己修改

    把之前做的135.149.64.187主机7144进程的threaddump拿下来分析。把7144进程高CPU线程7149、7146、7148、7147转换成16进制,在threaddump文件中匹配,发现这4个线程都在做gc垃圾回收。终于找到CPU高的原因,是这四个一直做gc垃圾回收的线程导致的,这也说明了堆内存不够用才会一直做垃圾回收。
    

    修改参数后CPU高故障分析

    应用那边把修改参数后的WebLogic节点启起来之后,主机又出现了用户CPU居高不下的现象,CPU高的进程还是WebLogic进程,应用那边又增加堆内存-Xms2048m -Xms2048m,重启,结果无济于事,同样的现象再次出现了。

    经过上一轮的分析把目标锁定到堆内存的使用上,之前加的参数也起作用了,在/weblogic目录下生成了heapdump文件。用jmap查看当前JVM内存使用情况发现Eden区和Old区内存使用高达99%以上。了解到应用做过代码更新,断定问题出在代码上。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-49y1gb3X-1610078240775)(C:\Users\geray\AppData\Roaming\Typora\typora-user-images\image-20200909103137678.png)]

    分析占用987.4M堆内存的对象,程序执行的sql查询结果太多,生成大量的对象,占用较多的堆内存。

    造成本次CPU高故障的原因是之前打开一个页面,一次把页面所有的页签的数据全部加载出来,会有20多次数据库的请求,请求涉及到的大表关联比较多,生成了大量的对象把堆内存撑爆了,无堆内存可用就会一直做gc垃圾回收,导致用户CPU过高。现在分多次把页面的数据加载出来解决了此问题。

    2018年4月19日,应用修改了部分代码,现在系统运行正常,没有出现CPU高的问题。

    连接池泄露

    日志信息中出现大量JDBC警告:

    <2018-7-30 上午10时23分22秒 CST> <Warning> <JDBC> <BEA-001153> <Forcibly releasing inactive/harvested connection "weblogic.jdbc.wrapper.PoolConnection_oracle_jdbc_driver_T4CConnection@6850403" back into the data source connection pool "JKWEB", currently reserved by: java.lang.Exception
    	at weblogic.jdbc.common.internal.ConnectionEnv.setup(ConnectionEnv.java:367)
    
    
    根据Oracle官方解释,造成该类问题主要原因为:业务系统代码程序获取数据库连接,当完成业务处理后,没有使用代码显式地对该连接进行关闭(即还回池中,并非关闭物理连接),从而导致分配出去的连接不能回收到连接池中进行重用,最后引发数据库连接不足,应用出现无法使用或响应缓慢的问题。建议应用人员检查上述红色标注代码的业务主线,将调用连接的代码编写finally语句块进行关闭处理。
    

    联系业务人员进行代码检查并优化

    控制台服务健康状况和连接池容量问题

    控制台服务出现亚健康或不健康时,查看日志文件分析

    $JAVA_HOME/bin/jmap -heap 8848	# 查看进程使用堆内存情况
    

    使用MAT工具把生成的heapdump拿下来分析发现有两个对象占用内存较高,且这两个对象都是在执行相同的代码。

    情况1

    如果大量出现异常信息:连接池容量以达到最大,需要1个新的连接而创建了0个

    解决办法:

    连接池中的最大连接数已不满足生产需求,需调大最大连接数

    通知业务人员调整报数据源中报错异常数据源调整其连接池大小。

    情况2

    健康状态为警告(warning)

    查看日志,并做线程转储文件

    分析是否存在hashmap,hashset等

    发现很多线程同时对HashMap和HashSet进行操作,java中常用的HashSet、HashMap都是线程不安全的, 如果多条线程访问他们,而且多于一条的线程试图修改它们,则可能出错。

    据源调整其连接池大小。

    情况2

    健康状态为警告(warning)

    查看日志,并做线程转储文件

    分析是否存在hashmap,hashset等

    发现很多线程同时对HashMap和HashSet进行操作,java中常用的HashSet、HashMap都是线程不安全的, 如果多条线程访问他们,而且多于一条的线程试图修改它们,则可能出错。

    建议开发人员检查相关代码,使用ConcrrentHashMap替代HashMap。

    展开全文
  • Tomcat问题归总

    2016-01-20 15:55:00
    问题:在调试网站时尝尝遇到tomcat不能正常停止的问题,导致下次要启动时提示端口被占用而无法启动,遇到该问题,可尝试终止java进程,方法如下: 1. ps -e | grep java 得到进程号,如70097 2. kill -9 70097 (-...

    问题:在调试网站时尝尝遇到tomcat不能正常停止的问题,导致下次要启动时提示端口被占用而无法启动,遇到该问题,可尝试终止java进程,方法如下:

    1. ps -e | grep java
        得到进程号,如70097

    2. kill -9 70097
      (-9表示强制杀死)

    终止java进程后再次启动tomcat,成功!

    转载于:https://www.cnblogs.com/needly/p/5145502.html

    展开全文
  • Unity面试问题归总

    2018-04-08 13:40:00
    Unity面试问题归总 C#中Struct和Class的区别 Struct是Class的一种 A*寻路 https://blog.csdn.net/windcao/article/details/1533879https://www.cnblogs.com/xiaotuzi/p/6491491.html C# Thread和Unity协程的...

    Unity面试问题归总

    C#中Struct和Class的区别
      Struct是Class的一种

    A*寻路

    https://blog.csdn.net/windcao/article/details/1533879
    https://www.cnblogs.com/xiaotuzi/p/6491491.html

     

    C# Thread和Unity协程的区别

    Unity的bug遇到了哪些

     

    物体移动的函数有哪些

    直接修改position和通过刚体控制移动的区别是什么
      -- 直接修改position进行强制位移遇到碰撞可能会卡位

    Unity协程怎么实现

    详解Unity3D中的协程(Coroutine)

    游戏中有许多过程(Process)需要花费多个逻辑帧去计算
      密集的流程:如寻路,计算量很大
      稀疏的流程:如触发器,大多数时候没用,用到的时候很重要

    Unity中Animation和Animator的关系

    Trigger和Collider的区别

    堆和栈的区别:https://blog.csdn.net/u012723995/article/details/49911639

    如何进行视角改变/ 屏幕缩放等

    转载于:https://www.cnblogs.com/FudgeBear/p/8744511.html

    展开全文
  • 奇葩网络问题归总

    2016-08-01 23:57:51
    奇葩网络问题归纳总结

    1.前言

    公司为游戏做加速,总遇到奇葩的网络问题,这里归纳总结下

    2.问题和解决

    2.1 问:ie跳转到私服发布站

    答:这属于浏览器劫持,使用360进行杀毒和系统急救箱可以解决,后续研究下可以搞一个通法

    展开全文
  • STL面试问题归总

    2016-11-08 17:18:43
    面试中遇到几个跟STL相关的问题,自己在平时工作中用的不多,很多基础都比较欠缺。回来后查了一下,记录以供后续学习。   问题1、vector的clear函数会释放内存空间吗?如何主动释放被占用的内存空间? 当vector...
  • nutch常见问题归总,对初学nutch的一些问题做出的整理
  • LNMP编译安装遇到问题归总 1、错误:configure: error: freetype-config not found. 解决:yum install freetype-devel 2、错误:configure: error: libevent >= 1.4.11 could not be found 解决:y...
  • android编译问题归总

    2014-03-20 11:00:36
    编译android error1: ziperror: Invalid command arguments (cannot repeat names in zip file)出现这个错误. 解决方法1: findframeworks/base/docs -name .svn |xargs rm -rf findbuild/tools/droiddoc -...
  • Keil软件编程问题归总

    2019-10-01 04:08:06
    Q:KEIL、uVision、RealView、MDK、KEIL C51之间的关系纠葛(比较区别)? A: KEIL是公司的名称,有时候也指KEIL公司的所有软件开发工具,目前2005年Keil由ARM公司收购,成为ARM的公司之一。...
  • EDM自动化问题归总

    2019-03-05 17:23:49
    OutLook转发模块之间有断层,解决办法:删除height=0的tr
  • 解决办法:看看你当初注册申请的App ID 绑定的邮箱,因为你这个构建版本有问题的时候,苹果公司会给你发个邮件(里面会详细说明你的问题)不过百分之50都是百度地图的问题 需要在这里添加-ObjC要注意大小写 ...
  • IE和火狐的css兼容性问题归总 做网站这一行的人没有一个人对于这DIV+CSS 切图后"IE和火狐的兼容性难"的问题不头疼的.为什么?为什么就这么难呢下面:IE和火狐的css兼容性问题归总 CSS对浏览器器的兼容性...
  • 说明:使用线程池的好处是减少在创建和销毁线程上所花的时间以及系统资源的开销,解决资源不足的问题。如果不使用线程池,有可能造成系统创建大量同类线程而导致消耗完内存或者“过度切换”的问题。 Major 不允许...
  • 慎用,测试没啥,坑不死你(k8s)我还是个菜鸡,不只这个命令是否会带来副作用,但测试时,为解决问题,真的好用! docker system prune -a 可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络
  • 1.commit失败(1) 解决办法: 把爆红的路径的文件删除掉, 重新commit 2. push时候, 有100MB限制 解决办法: ...Git只允许上传最大100MB的文件,如果超过,则会被server reject则需:注意要在.git文件夹目录下执行...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 134
精华内容 53
关键字:

归总问题