
bug
文章平均质量分 85
老猿说说
Java老猿
展开
-
bug
这篇blog迟到了很久,本来是想写另一个跟网络相关bug的查找过程,偷偷懒,写下最近印象比较深刻的bug。这个bug是我的同事水寒最终定位到的。前几个月同事报告称有一个线上MQ集群会同一时间抛出ArrayIndexOutOfBoundsException这个异常,也就是数组越界。查看源码,除去一些无关紧要的细节大概是这样子:public class ConnectionSelector{ private AtomicInteger sets=new AtomicInteger(0); p原创 2020-10-10 13:18:35 · 126 阅读 · 0 评论 -
句柄自动释放问题
FileChannel没有自动释放!!!!其他的垃圾回收会自动释放import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.RandomAccessFile;import java.nio.ch...原创 2020-11-10 13:11:05 · 667 阅读 · 0 评论 -
无法连接jvm
jmap、jstack、jps无法连接jvm解决办法一、背景在对线上服务器的java应用dump操作时发现,以下报错,不能dump。jps也获取不到java进程的pid。# jmap -dump:file=/data/dump/jvm_en.hprof 2017620176: Unable to open socket file: target process not respon...原创 2019-01-10 10:26:09 · 657 阅读 · 0 评论 -
记录一个多核CPU负载不均衡问题(动态绑定进程到指定cpu:taskset -pc $CPU $PID)
昨晚和一位读者朋友讨论了一个问题:在一台多核 CPU 的 Web 服务器上,存在负载不均衡问题,其中 CPU0 的负载明显高于其它 CPUx,进一步调查表明 PHP-FPM 的嫌疑很大。话说以前我曾经记录过软中断导致过类似的问题,但是本例中可以排除嫌疑。让我们在一台四核服务器上采样分析一下数据确认看看是否存在负载不均衡问题:shell> mpstat -P ALL 1 10CPU %u...转载 2018-06-27 11:29:08 · 688 阅读 · 0 评论 -
hadoop查看日志
mapred-site.xml中的jobhistory相关配置参数的参数含义 mapreduce.jobhistory.address mapreduce.jobhistory.webapp.address 1、14/04/04 17:32:35 INFO ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:10020. ...原创 2018-05-29 17:00:01 · 6561 阅读 · 0 评论 -
RST及java socket关闭后读写的各种异常
RST及java socket关闭后读写的各种异常RST及java socket关闭后读写的各种异常1. RST (Reset)2. 对已关闭socket读写会产生的异常2.1 主动关闭方2.2 被动关闭方被FIN关闭被RST关闭重点在于:3. 怎么避免意外的RST?参考资料1. RST (Reset)TCP连接的断开有两种方式:连接正常关闭时双方会发送FIN,经历4次挥手过程;通过RST包异常退...转载 2018-05-24 13:47:06 · 2514 阅读 · 0 评论 -
windows文件在linux下不兼容
vim filename然后用命令:set ff? #可以看到dos或unix的字样. 如果的确是dos格式的。然后用:set ff=unix #把它强制为unix格式的, 然后存盘退出。转载 2018-06-11 17:48:54 · 974 阅读 · 0 评论 -
TIME_WAIT和CLOSE_WAIT
来自:http://blog.youkuaiyun.com/shootyou/article/details/6622226 昨天解决了一个HttpClient调用错误导致的服务器异常,具体过程如下:http://blog.youkuaiyun.com/shootyou/article/details/6615051里头的分析过程有提到,通过查看服务器网络状态检测到服务器有大量的CLOSE_WAIT的状态。 在服务器的日...转载 2018-05-25 16:22:23 · 182 阅读 · 0 评论 -
MAT linux
Eclipse Memory Analyzer对于MAT这个专业的内存泄漏分析工具,大家应该都比较熟悉,用起来很方便,只需要打开Eclipse,然后把jmap或者jvm dump出来的文件拖到Eclipse里面,就会自动分析,然后以页面的形式展示出来结果。在结果里面可以看到内存总体情况、泄漏嫌疑对象、以及所有对象的内存占用情况。这对我们找到内存溢出、内存泄漏的元凶帮助很大。但是对于生产环境,总会遇...转载 2018-04-18 16:09:56 · 5812 阅读 · 1 评论 -
tcpdump抓包-Wireshark分析
yum -y install tcpdump #发现已经安装,whereis tcpdump/usr/bin/tcpdump --help#发现没用户useradd tcpdump/usr/sbin/tcpdump -n -i eth0 host 本机ip and 外网ip -w xxx.raw/usr/sbin/tcpdump tcp port 8802 -w c.raw原创 2017-12-14 15:42:08 · 266 阅读 · 0 评论 -
一个因中断导致的死锁分析
最近在一次压测过程中暴露出notify client的一个死锁问题,发生死锁的场景是消息的可靠异步发送,具体过程是:(生产者)消息发送线程拿到队列锁,当队列未满的时候写入消息,释放锁,当队列满的时候,释放锁,等待队列空条件。(消费者)刷盘线程拿到队列锁,当队列有数据的时候,取数据清空队列,释放锁,再把取出来的消息数据刷盘持久化;没数据的时候,释放锁,等待队列非空条件。这转载 2017-07-17 11:06:58 · 768 阅读 · 1 评论 -
找bug记(2)
发表于 2011-09-10 | 分类于 未分类 | 这篇blog迟到了很久,本来是想写另一个跟网络相关bug的查找过程,偷偷懒,写下最近印象比较深刻的bug。这个bug是我的同事水寒最终定位到的。 前几个月同事报告称有一个线上MQ集群会同一时间抛出ArrayIndexOutOfBoundsException这个异常,也就是数转载 2017-07-18 20:31:39 · 243 阅读 · 0 评论 -
Tomcat一个BUG造成CLOSE_WAIT
Tomcat一个BUG造成CLOSE_WAIT 之前应该提过,我们线上架构整体重新架设了,应用层面使用的是Spring Boot,前段日子因为一些第三方的原因,略有些匆忙的提前开始线上的内测了。然后运维发现了个问题,服务器的HTTPS端口有大量的CLOSE_WAIT: 我的第一反应是Spring boot有Bug,因为这个项目分为HTTP和HTTPS两种原创 2017-07-10 14:24:05 · 1285 阅读 · 0 评论 -
bug
上周在线上系统发现了两个bug,值得记录下查找的过程和原因。以后如果还有查找bug比较有价值的经历,我也会继续分享。第一个bug的起始,是在线上日志发现一个频繁打印的异常——java.lang.ArrayIndexOutOfBoundsException。但是却没有堆栈,只有一行一行的ArrayIndexOutOfBoundsException。没有堆栈,不知道异常是从什么地方抛出来的,也就不原创 2017-07-17 11:08:04 · 383 阅读 · 0 评论 -
线上某应用的FULLGC分析
过程如下:抽了台线上机器,想看下这段时间机器的gc情况,发现里面有好几个FullGc的日志:T23:23:02.009+0800: 21860.015: [Full GC 21860.015: [CMS: 2361237K->1111804K(4718592K), 4.9917540 secs] 2532961K->1111804K(5190464K), [CMS转载 2017-07-17 11:05:13 · 322 阅读 · 0 评论 -
HttpClient连接池抛出大量ConnectionPoolTimeoutException: Timeout waiting for connection异常排查
今天解决了一个HttpClient的异常,汗啊,一个HttpClient使用稍有不慎都会是毁灭级别的啊。这里有之前因为route配置不当导致服务器异常的一个处理:http://blog.youkuaiyun.com/shootyou/article/details/6415248里面的HttpConnectionManager实现就是我在这里使用的实现。问题表现:转载 2017-07-14 17:37:47 · 490 阅读 · 0 评论