weblogic
文章平均质量分 72
深圳gg
这个作者很懒,什么都没留下…
展开
-
weblogic节点告警,系统不能访问诊断
1.现场实施同事反馈节点告警,单点访问节点白屏。2.从nohup日志中看到有stuck线程,要现场做了jstack回来。<Jun 23, 2020 11:40:51 PM CST> <[STUCK] ExecuteThread: ‘2’ for queue: ‘weblogic.kernel.Default (self-tuning)’ has been busy for “613” seconds working on the request "weblogic.servlet原创 2020-06-28 09:17:43 · 2824 阅读 · 1 评论 -
commons.beanutils java.lang.NumberFormatException
现象:系统做异地做双活,A地和B地,A地是主,B地为从。B地的代码是从A地copy的。不过在测试B地的系统的时候报错,从chrome浏览器上看到报500的错误。1.分析日志都是这个错误:Caused By: java.lang.NumberFormatExceptionat java.math.BigDecimal.(BigDecimal.java:505)at java.math.BigDecimal.(BigDecimal.java:728)at org.apache.commons.bean原创 2020-06-22 11:10:50 · 324 阅读 · 0 评论 -
Connection reset by peer: socket write error
现场反馈,有一个导出报错,点导出按钮之后,等待一会之后就报错。1.要现场发回来weblogic日志:Caused by: java.net.SocketException: Connection reset by peer: socket write errorat java.net.SocketOutputStream.socketWrite0(Native Method) ~[na:1.6.0_43]at java.net.SocketOutputStream.socketWrite(Socke原创 2020-06-17 15:16:09 · 28536 阅读 · 0 评论 -
weblogic 数据库连接报XAResource.XAER_RMFAIL start()
weblogic启动之后,点击功能报:Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: Unexpected exception while enlisting XAConnection java.sql.SQLException: XA error: XAResourc原创 2020-06-09 08:56:25 · 1496 阅读 · 0 评论 -
Tomcat Could not open JDBC Connection for transaction
org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is java.sql.SQLTransientConnectionException: Connection is not avai...原创 2020-04-02 16:14:27 · 2113 阅读 · 0 评论 -
Current transaction is not in progress
系统某些功能点击偶尔报错,用的是某国产中间件,Current transaction is not in progress的意思是会话没有对应的进程了,有两种可能: 1.数据库中的会话被干掉了。 2.事务超时被干掉了。 看功能都是非常简单的功能,不会有超时的问题,会话被干掉了。实施无意中说到之前数据库归档满了,数据库重启了一下,中间件没有重启。dang,就是这个问题,重启一下就好了,说明这...原创 2020-01-14 17:15:10 · 1288 阅读 · 0 评论 -
ORA-3136 WARNING: inbound connection timed out
最近遇到一个奇怪的事情,每天晚上22点到第二天8点,使用系统经常会报错。数据库是Oracle,三个实例组成的RAC,中间件是weblogic。1.从中间件层面上看,这种错误意识是weblogic连不上数据库后,自动重连都连不上,就会出现这种问题。<2019-10-29 下午10时57分37,679秒 CST> <Received exception while crea...原创 2019-12-17 19:57:05 · 925 阅读 · 0 评论 -
中间件数据库连接池不够用
中间件报In-use connections equal max-pool-size and expired max-wait-time. Cannot allocate more connections,说明连接池被用光了。分析jstack,发现很闲啊。推测是瞬间使用连接太多。加大max-pool-size,从100加到200。系统使用一段时间后还是报错。只能分析代码了,发现有循环连数据...原创 2019-11-27 18:17:11 · 1168 阅读 · 0 评论 -
Tomcat7中打印stuck的线程
在中间件层面,一些非常慢的请求就是性能杀手,weblogic可以很容易的配置超过多少秒打印出线程来,也叫stuck的线程。长期整改这些问题对系统的稳定运行有极大的帮组。修改context.xml文件,加入 org.apache.catalina.valves.StuckThreadDetectionValve。<?xml version='1.0' encoding='utf-8'...原创 2019-11-20 14:15:01 · 2504 阅读 · 0 评论 -
系统从Tomcat迁移到Weblogic无法发布
有一个系统从开发环境部署到正式环境,开发环境用的是tomcat,正式环境用的是weblogic。部署一直不成功,启动失败。首先会报这个警告: <The list of resource packages: gg.soa.org.apache.cxf.jaxrs.provider;org.apache.cxf.jaxrs.provider.atom;gg.soa.org.apache...原创 2019-11-06 10:37:19 · 2234 阅读 · 6 评论 -
JVM java.lang.OutOfMemoryError: PermGen space处理方法
近期weblogic 11g永久代内存溢出,分析JVM dump文件是没有用处的,因为那只是堆内存,永久代不在里面。目前永久代设置是1G,遥想当年,只有400M,这么多年来一直在涨,现在一次full gc需要10多秒。可以增大到1.5G,但从GC日志中可以看到永久代在不断的增长,如果二周不重启weblogic,内存又不够用了,不是长久之计。java.lang.OutOfMemoryError:原创 2017-02-10 17:44:08 · 2313 阅读 · 0 评论 -
sftp error: process_write: write failed
现场系统报附件无法上传和下载。附件系统是一个单独的子系统,通过sftp服务上传到存储。 1.拿回weblogic日志分析,后台报了很多无法长传和下载的错误。了解到最近没有发布增量,现象是在上班期间突然之间不能用。 2.再次分析中间件日志,发现都是在操作sftp这一块报错。我觉得拿回Linux操作系统的message日志。 3.分析message日志,发现了大量s原创 2016-10-27 09:59:53 · 2843 阅读 · 0 评论 -
java.lang.OutOfMemoryError: unable to create new native thread
今天现场weblogic出现不能创建线程的内存溢出的错误。#### > <[ServletContext@2009164895[app:EAR module:web path:/web spec-version:2.5]] Servlet failed with Exceptionjava.lang.OutOfMemoryError: unable to create原创 2016-11-07 16:51:00 · 1041 阅读 · 0 评论 -
HN有一个奇葩的性能问题
收到现场实施兄弟反馈,有一个子系统非常慢,因为此系统业务比较偏,很少人使用。现场把数据库报告发回来了,数据库上完全没有任何负载。 对于一个系统,整体慢的情况下,先用前端工具httpwatch看下到底慢在哪里。 等到httpwatch的结果发回来,看到一些端倪(由于公司不能传图片,所以有文字描述一下): 在time chat这一栏,基本上深绿色和红色各占一半,且Rece原创 2016-11-25 15:19:35 · 1149 阅读 · 0 评论 -
weblogic应用超大日志分析及原因分析
有一个weblogic服务,半小时产生了17G的server日志,正常的话其实只有几兆,直接导致服务不可用。这么大的日志,如何分析呢?最好是借助于linux[root@gdsDB]# ls -lh-rw-r--r--. 1 root root 17G Jun 1 16:34 material_server6.log计算出日志的总大小[root@gdsDB]# w原创 2016-06-16 15:38:14 · 4393 阅读 · 0 评论 -
weblogic中缓存的应用
很早之前听说中间件有缓存SQL的功能,很疑惑,也不知道缓存SQL的啥。 最近分析了一些JVM的dump文件,有所领悟,环境是weblogic 11g 和12c。 weblogic缓存了JDBC的对象(oracle.jdbc.driver.T4CPreparedStatement),这些对象是按照SQL语句来的,不同的SQL语句缓存的JDBC的对象不一样。用处是当系统要创建很多这原创 2016-06-06 11:11:38 · 3913 阅读 · 1 评论 -
java多线程使用不当造成的问题
下面的thread dump是在CPU使用高的情况下采集的jstack的数据。"pool-19-thread-50" prio=10 tid=0x00007fd1b8001000 nid=0x11bb2 runnable [0x00007fd41f018000] java.lang.Thread.State: RUNNABLEat sun.nio.ch.EPollArrayWrap原创 2016-06-06 17:52:13 · 14958 阅读 · 0 评论 -
weblogic 设置多少个GC线程合适
之前写过一篇Linux下服务器CPU过高的诊断,发现都是在做GC,一个GC线程消耗30%-40%的CPU,一个JVM开启了63个GC线程,消耗了百分之几千的CPU。有很多次CPU飙高的情况可以发现都是GC线程导致,那我们默认的GC线程配置合理吗? 首先,JVM默认GC线程数量是(ncpus 还有跟我们的部署特点有关系,一台PC server 96个逻辑CPU,256G内存,在机器原创 2016-06-06 16:52:44 · 4717 阅读 · 0 评论 -
GUIZHOU的性能问题诊断
现场同事报有个功能流程回退很慢,确定不是整个系统慢,做了一个httpwatch,等待了几分钟后,浏览器有卡死的状况。 在time chat这一栏,基本上深绿色和红色各占一半,且Received字节越大越慢,先对这些颜色描述一下(httpwatch9.3.39pro这个版本可以看到各种颜色的描述): 白色------- blocked 曾经服务慢的无法响原创 2016-09-19 16:50:26 · 571 阅读 · 0 评论 -
如果判断weblogic有内存泄露
2016-06-01T17:28:41.565+0800: 28103.616: [Full GC [PSYoungGen: 1724416K->1098291K(1736192K)] [ParOldGen: 3494228K->3494200K(3495424K)] 5218644K->4592491K(5231616K) [PSPermGen: 496291K->496291K(1048576原创 2016-06-06 10:12:27 · 2980 阅读 · 0 评论 -
weblogic堆积的数据库链接1
前几天分析一份内存溢出的dump文件,发现堆积了很多数据库连接,多的有17M,少的有1K,完全不知道原因。今天碰到一个类似的问题,幸运的是把JVM的thread dump拿回来了,用IBM Thread and monitor Dump Analyzer for Java分析可以得出,是一个数据库连接的操作慢导致341个数据库连接等待。由于不能贴图,就贴一个日志: 锁其实就是一个内存地址,原创 2016-04-19 15:26:04 · 1524 阅读 · 0 评论 -
weblogic堆积的数据库链接2
昨天收到了一些dump文件,经过MAT分析,找不到占用内存多的线程,当时thread dump也没有,之前写过一篇weblogic堆积的数据库链接1,是通过thread dump找到问题的。那现在没有thread dump,硬着头皮看能不能找到问题。 通过MAT的thread_overview肯定是看不到有价值的内容。thread_overview是通过线程的维度看消耗的内存。 可原创 2016-04-21 10:23:33 · 1598 阅读 · 0 评论 -
对weblogic一些量化的认识
最近分析了很多的OOM的dump文件,对于weblogic又有了一些认识(只是对于我们的系统): 1.线程数量,130 - 178 ,最大的有达到350,不过有达到200的已经挂了。 2.线程的大小,1K-1M,绝大部分线程在这个区间,有很大的线程,通常都是与数据库有关。 3.一个线程有16M,是一个数据库连接,里面用hibernate的方式根据主键取了一条数据原创 2016-04-21 16:08:39 · 838 阅读 · 0 评论 -
Oracle表中的一条记录占用weblogic多少内存
分析了很多OOM的文件,有一类问题起初找不到原因,通常会根据thread_overview找到占用内存最多的线程。但有一种情况就是从thread_overview中找不到,这个时候就得看dominator_tree,看到很多从数据库中取数据的对象,打开一个,吓了一条,通过主键取一条数据居然占用了16M的内存。我又看了8M,4M,2M的对象,也是取一条数据的,我断定这个与数据库表的记录长度有关系,果原创 2016-04-22 16:31:28 · 842 阅读 · 0 评论 -
如果启动weblogic项目很慢问题定位
weblogic启动很慢,配置JVM的一个参数 -XX:+PrintCompilation 为了确认这个问题可以尝试使用这个参数,输出JIT编译的情况,如果初始阶段发生大量方法的编译,就可以确定是由于JIT编译引起的。 启动的时候就会打印出详细信息,看到在哪里停顿的时间比较长。 55 1 java.util.Properties$LineReader::原创 2016-04-29 09:15:24 · 3107 阅读 · 0 评论 -
weblogic在linux下启动会卡住的问题解决
启动weblogic 11g的时候实例会无缘无故卡住,完全不知道原因,最好查到是要改一下JDK的一个参数: 修改 $JAVA_HOME/jre/lib/security/java.security 修改securerandom.source=file:/dev/./urandom How to Dia原创 2016-05-20 16:16:07 · 9395 阅读 · 0 评论 -
Linux下服务器CPU过高的诊断
Weblogic非常耗CPU的时候,如何知道是什么在耗性能?1.先用top -H 看线程的消耗 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND14537 weblogic 20 0 26.0g 9.3g 11m R 41.8 7.4 56:21.87 java14530 weblog原创 2016-06-06 15:07:26 · 4523 阅读 · 1 评论 -
weblogic weblogic.servlet.internal.session.MemorySessionData对象过多导致内存溢出
用MAT分析DUMP文件,可以发现weblogic.servlet.internal.session.MemorySessionData过多, SELECT * FROM weblogic.servlet.internal.session.MemorySessionData 对象有120万之多,占用900M的内存。 300000To look f原创 2016-05-20 12:38:11 · 4503 阅读 · 0 评论 -
weblogic The transaction is no longer active - status: Marked rollback
总部有个系统tzjh工作流报流程超时,无法走下去。分析性能问题,按我的风格,先做一个httpwatch的结果,根据结果大致定位。 看到结果后就是一个主请求很慢,定位到是java和SQL的问题,weblogic服务一切良好。找出问题时段的Oracle AWR,可以看到下面的SQL执行了4百多秒。 delete from gg_ru_todo_task_IPMS t where e原创 2017-03-14 14:19:15 · 7171 阅读 · 0 评论 -
Oracle数据库挂了后weblogic的日志
Oracle数据库挂了后weblogic的日志,接下来就要具体分析数据库的alert日志才能定位到问题。 ORA-12518, TNS:listener could not hand off client connection > java.sql.SQLException: Listener refused the connection with the f原创 2017-03-24 10:36:55 · 2643 阅读 · 0 评论 -
JVM GC日志解析
JVM GC日志经常要检查,可以提前发现问题。import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.InputStreamReader;import java.sql.Connection;import java.sql.DriverManage...原创 2019-01-15 16:25:15 · 363 阅读 · 0 评论 -
诊断weblogic告警必须要有jstack
上午10点收到GX现场weblogic告警,由于server日志是每天生成一份,所以看到的是今天的堵塞,连接池不够用了。#### > POST /web/gg/controlquality/common/getReadyData.sc HTTP/1.1X-Requested-With: XMLHttpRequestAccept: application/json原创 2018-01-10 15:18:19 · 1144 阅读 · 0 评论 -
Weblogic读取blob堵塞的原因
很久之前的一个问题今天终于得到了答案。 之前是有这么一个stuck请求,它上了一个锁导致后来的数据库链接都在等待这个锁,上次是没有找到原因,因为只是读取一条数据的一个blob字段,这个字段并不大。"[STUCK] ExecuteThread: '13' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=10 t原创 2017-12-29 15:20:59 · 1586 阅读 · 1 评论 -
weblogic stuck String StringUtils
今天在一个报表及导出的weblogic节点不响应,后台的堵塞都是这种,操作系统表现是耗用CPU 6000%(相对于消耗了60个CPU)。下面的代码堆栈都是相对简单的功能,为什么出现这种问题呢? 原因是有线程长期并大量消耗CPU,导致剩下的线程无法获取到CPU产生spin。解决问题的办法就是: 1.top -H -p 进程id 获取到耗CPU的线程。 2.做一个jsta原创 2018-01-04 10:44:42 · 490 阅读 · 0 评论 -
weblogic大量功能慢导致的问题
现场报节点不能使用。#### > <[STUCK] ExecuteThread: '59' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "600" seconds working on the request "Http Request Information: weblogic.原创 2018-01-02 18:03:49 · 5780 阅读 · 0 评论 -
jstack诊断weblogic连接池满的问题
1.节点现场告警,weblogic节点告警,且系统使用缓慢。2.看weblogic日志出现大量的错误日志,连不上数据源:java.sql.SQLException: start() failed on resource 'CTDataSource_gg_domain': XAER_RMERR : A resource manager error has occured in the t原创 2017-12-19 19:56:37 · 2943 阅读 · 0 评论 -
weblogic oracle.jdbc.driver.PhysicalConnection.rollback
先是凌晨的时候中间件连数据库出了问题:org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (IO 错误: The Network Adapter could not establish the connection)at org.apache.commons.dbcp.Bas原创 2017-10-24 15:54:06 · 2765 阅读 · 0 评论 -
运用触发器定位不知源的weblogic
数据库里面有一张表GG_FMIS_BILL,记录数据的同步日志,现在问题来了,代码更新后,理论上报错信息内容是B,但一半的报错内容是A。到底是哪些节点导致呢?这种场景用到触发器记录源weblogic的IP等信息:drop table test;create table test( BILL_ID VARCHAR2(50), OS_USER VARCHAR2(50), SESSI原创 2017-08-15 15:26:31 · 357 阅读 · 0 评论 -
用JVM thread dump诊断quartz的问题
现场报与其他系统的数据同步停止了。系统中间件是weblogic,用定时框架quartz调用webservices,同步的信息记录在一张表中。先获取weblogic日志,并未发现有同步的错误信息。现场发布了十几个weblogic节点,定时任务放在一个节点上。 这个定时任务是挂了还是hang住了,这个时候得看thread dump:"ggScheduler_Worker-1" pri原创 2017-08-21 17:55:06 · 630 阅读 · 0 评论 -
2017-06-28一次奇怪的慢问题诊断ERROR_INTERNET_CONNECTION_RESET
开发反馈,新增单据会一直hang着,等待300s就报页面找不到。 1.用httpwatch看到的结果是:+ 0.0001 299.461781 0 GET ERROR_INTERNET_CONNECTION_RESEThttps://10.10.5.5:12000/web/workticket/create?ticketType=11&bureauCode=02922原创 2017-06-29 10:42:40 · 3623 阅读 · 0 评论