摘要: 企业开发的时候,有可能碰到的问题: oom 内存泄露 线程死锁 锁争用 java进程消耗cpu过高 oom 内存泄露 线程死锁 锁争用 java进程消耗cpu过高 拿死循环举例,先查看是哪个java进程占用cpu高,然后可以使用java VisualVm工具链接到对应的java进程,然后去抽样器中查 阅读全文
posted @ 2019-02-25 17:01 coolgame 阅读(278) 评论(0) 推荐(0) 编辑
摘要: java.lang.OutOfMemoryError: Java heap space 当应用程序申请更多的内存,而Java堆内存已经无法满足应用程序对内存的需要,就会抛出此种异常。 java.lang.OutOfMemoryError: PermGen space及其解决方法 表示Java永久带( 阅读全文
posted @ 2019-02-25 15:26 coolgame 阅读(3191) 评论(0) 推荐(0) 编辑
摘要: 描述背景: 账务系统,峰值时每秒大概处理200笔请求(收单,转账,退款等等)。 某其他业务线上线新功能,有BUG,瞬间往redis中写入7G数据,redis系统瘫痪。 redis系统重启。 账务系统开始报无法从redis连接池中获取连接。账务系统内有大量的redis锁,用来做并发控制。 问题解决过程 阅读全文
posted @ 2019-01-15 21:06 coolgame 阅读(854) 评论(0) 推荐(0) 编辑
摘要: 上面是测试类,没有办法直接在测试类里面测试异常回滚。 原因是: 这里有个默认属性,凡是操作数据库的,最后会默认回滚。 如果使用@Rollback(false)或者设置跟回滚有关的标签为false。那会造成一个现象,无论如何都不会回滚。即使抛出了异常也不会回滚。 我们需要这么做:把事务标签加在其他类的 阅读全文
posted @ 2019-01-02 10:35 coolgame 阅读(1591) 评论(0) 推荐(0) 编辑
摘要: 基于注解的模式: @Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class,timeout=1,isolation=Isolation.DEFAULT) 其中propagation=Propagation. 阅读全文
posted @ 2018-12-29 11:36 coolgame 阅读(917) 评论(0) 推荐(0) 编辑
摘要: 如题 阅读全文
posted @ 2018-12-26 11:44 coolgame 阅读(370) 评论(0) 推荐(0) 编辑
摘要: https://stackoverflow.com/questions/12009423/what-does-status-canceled-for-a-resource-mean-in-chrome-developer-tools AJAX默认的是异步模式,经过观察,频繁请求,之前的某个请求超时会 阅读全文
posted @ 2018-12-06 11:24 coolgame 阅读(308) 评论(0) 推荐(0) 编辑
摘要: submit不会捕获任何异常 无法try catch 意思就是说二者最大的区别就是异常处理上,在execute的时候,如果你没有实现一个handler,那么他就使用默认的handler来处理异常,你要是实现了一个handler 他就会使用的实例化的handler,但是对于submit来说,异常是绑定 阅读全文
posted @ 2018-12-03 17:22 coolgame 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 你觉得这样打日志没问题,但是堆栈信息却丢了~ 原因是JDK5的一个优化,打一个地方报出的异常一定次数以后就会把对账给省略了~ 用如下代码可以做测试,这个时候, 你只要找到最开始的日志,那里是全的~之后改什么启动参数,把优化关了~不归你管~ public class LostException4 { 阅读全文
posted @ 2018-12-03 17:21 coolgame 阅读(323) 评论(0) 推荐(0) 编辑
摘要: 代码和报错如上图,按道理讲,错误会被trycatch,然后在日志中看到错误,然后,并没有错误,原因是代码还有没有走进方法内。在interfaceConfigParam通过框架STRUTS2 set值的时候,赋给了interfaceConfigParam其中一个枚举值一个不正确的值,导致框架阶段就报错 阅读全文
posted @ 2018-12-03 17:20 coolgame 阅读(122) 评论(0) 推荐(0) 编辑