最新 | 最热门 | 最高评价

+0  Linux下如何知道文件被那个进程写

Tag: Linux开发 | inodewatch | stat | systemtap
褚霸 发于 2013年03月12日 22:52 | 点击: 2016 | 展开摘要
晚上朔海同学问:

一个文件正在被进程写 我想查看这个进程 文件一直在增大 找不到谁在写 使用lsof也没找到

这个问题挺有普遍性的,解决方法应该很多,这里我给大家提个比较直观的方法。

linux下每个文件都会在某个块设备上存放,当然也都有相应的inode, 那么透过vfs.write我们就可以知道谁在不停的写入特定的设备上的inode。

幸运的是systemtap的安装包里带了inodewatch.stp,位于/usr/local/share/doc/systemta

查看全文: http://www.udpwork.com/item/9439.html

+0  Linux下如何知道文件被那个进程写

Tag: Linux | 工具介绍 | inodewatch | stat | systemtap
Yu Feng 发于 2013年03月12日 21:52 | 点击: 1628 | 展开摘要
原创文章,转载请注明: 转载自系统技术非业余研究

本文链接地址: Linux下如何知道文件被那个进程写

晚上朔海同学问:

一个文件正在被进程写 我想查看这个进程 文件一直在增大 找不到谁在写 使用lsof也没找到

这个问题挺有普遍性的,解决方法应该很多,这里我给大家提个比较直观的方法。

linux下每个文件都会在某个块设备上存放,当然也都有相应的inode, 那么透过vfs.write我们就可以知道谁在不停的写入特定的设备上的inode。

幸运的是systemta

查看全文: http://www.udpwork.com/item/9437.html

+0  BufferedIO和DirectIO混用导致的脏页回写问题

Tag: Linux | bufferedio | directio | systemtap
Yu Feng 发于 2012年10月15日 17:07 | 点击: 1578 | 展开摘要
原创文章,转载请注明: 转载自系统技术非业余研究

本文链接地址: BufferedIO和DirectIO混用导致的脏页回写问题

今天曲山同学在线上问道:

我测试发现,如果cp一个文件,然后direct io读这个文件,会消耗很长时间。

我猜测dio不能用page cache,而这个文件cp以后都在cache里面,要强制刷到磁盘,才能读?

我cp这个文件很大,超过256M

由于数据文件默认是用bufferedio方式打开的,也就是说它的数据是先缓冲在pagecach

查看全文: http://www.udpwork.com/item/8410.html

+1  ulimit -t 引起的kill血案

Tag: Linux | kill | systemtap | ulimit
Yu Feng 发于 2012年09月28日 23:21 | 点击: 1456 | 展开摘要
原创文章,转载请注明: 转载自系统技术非业余研究

本文链接地址: ulimit -t 引起的kill血案

今天在内核群里印风同学问了个问题:

某台机器的ulimit -t 不知道为啥是300, 这是不是意味着程序占用CPU 300秒后会收到SIGKILL ?

我用gdb跑mysqld 跑了一会,收到SIGKILL信号,没有配置cgroup,也没啥后台脚本,看了下,就ulimit -t 比较诡异,其他机器都是unlimited。

简单的man ulimit下手册说:

查看全文: http://www.udpwork.com/item/8178.html

+0  GLIBC 2.16 支持systemtap静态检查点

Tag: 优化 | libc | static marker | systemtap
褚霸 发于 2012年07月01日 17:52 | 点击: 1249 | 展开摘要
刚@淘宝雕梁 告诉我 GLIBC 2.16 支持systemtap静态检查点,消息源在这里, 摘抄相关部分如下:

* New configure option –enable-systemtap builds SystemTap static probes

into libc for setjmp and longjmp and into libpthread for various operations.

So far the setjmp/lon

查看全文: http://www.udpwork.com/item/8608.html

+0  GLIBC 2.16 支持systemtap静态检查点

Tag: Linux | 调优 | libc | static marker | systemtap
Yu Feng 发于 2012年07月01日 17:39 | 点击: 1510 | 展开摘要
原创文章,转载请注明: 转载自非业余研究

本文链接地址: GLIBC 2.16 支持systemtap静态检查点

刚@淘宝雕梁 告诉我 GLIBC 2.16 支持systemtap静态检查点,消息源在这里, 摘抄相关部分如下:

* New configure option –enable-systemtap builds SystemTap static probes

into libc for setjmp and longjmp and into

查看全文: http://www.udpwork.com/item/7597.html

+0  Erlang虚拟机基础设施dtrace探测点介绍和使用

Tag: Erlang探索 | dtrace | static marker | systemtap
Yu Feng 发于 2012年04月28日 21:42 | 点击: 1844 | 展开摘要
原创文章,转载请注明: 转载自Erlang非业余研究

本文链接地址: Erlang虚拟机基础设施dtrace探测点介绍和使用

最新的Erlang虚拟机(R15B01)很大的一个改进就是加入了对dtrace探测点的支持了, 具体参见这里, 主要目标是方便在生产实践中定位复杂的性能问题。

目前Erlang的虚拟机的探测点支持Linux的systemtap和freebsd的dtrace,我们刚好能够享受的到。

作者Scott Lystig Fritchie在去年的euc中做

查看全文: http://www.udpwork.com/item/7194.html

+0  MYSQL数据库网卡软中断不平衡问题及解决方案

Tag: Linux | 工具介绍 | 网络编程 | RPS | softirqd | systemtap
Yu Feng 发于 2012年01月16日 21:30 | 点击: 2546 | 展开摘要
原创文章,转载请注明: 转载自Erlang非业余研究

本文链接地址: MYSQL数据库网卡软中断不平衡问题及解决方案

最近公司在MySQL的数据库上由于采用了高速的如PCIe卡以及大内存,去年在压力测试的时候突然发现数据库的流量可以把一个千M网卡压满了。随着数据库的优化,现在流量可以达到150M,所以我们采用了双网卡,在交换机上绑定,做LB的方式,提高系统的吞吐量。

但是在最近压测试的一个数据库中,mpstat发现其中一个核的CPU被软中断耗尽:

Mysql QPS

查看全文: http://www.udpwork.com/item/6712.html

+0  systemtap如何跟踪libc.so

Tag: 工具介绍 | 调优 | libc.so | systemtap
Yu Feng 发于 2012年01月12日 16:29 | 点击: 2549 | 展开摘要
原创文章,转载请注明: 转载自Erlang非业余研究

本文链接地址: systemtap如何跟踪libc.so

下午和周忱同学折腾复杂程序的内存泄漏问题,用了valgrind, gogle perftools等工具都不大好用,很容易把应用程序搞死,于是打算用systemtap来在libc.so层面了解内存的使用情况。主要思路就是看malloc/realloc和free的调用次数的平衡。

首先准备下环境,系统是标准的RHEL 5u4:

$ uname -r
2.6.18

查看全文: http://www.udpwork.com/item/6691.html

+0  大文件重定向和管道的效率对比

Tag: Linux | 调优 | systemtap
Yu Feng 发于 2011年12月20日 14:07 | 点击: 1651 | 展开摘要
原创文章,转载请注明: 转载自Erlang非业余研究

本文链接地址: 大文件重定向和管道的效率对比

微博上的@拉风_zhang提出了个问题:

@淘宝褚霸 请教个问题,#1. cat huge_dump.sql | mysql -uroot ;#2. mysql -uroot < huge_dump.sql ;#1效率要高,在linux中通过管道传输 和 < 这种方式有什么差别呢?谢谢!#AskBaye#

这个问题挺有意思的,我的第一反应是:

没比较过,应该是

查看全文: http://www.udpwork.com/item/6558.html

+0  调研内核调用栈方便的工具 kmalloc-top

Tag: Linux | 工具介绍 | kmalloc-top | systemtap
Yu Feng 发于 2011年12月14日 13:10 | 点击: 2052 | 展开摘要
原创文章,转载请注明: 转载自Erlang非业余研究

本文链接地址: 调研内核调用栈方便的工具 kmalloc-top

我们在研究内核的时候,看了内核代码后,就想着某个函数被谁谁调用。 调用路径有很多条,有热门的,有偏门的,但从代码不大容易看出。 如果我们能和gdb那样在函数上设个断点,看下内核函数的调用栈就清楚了。 但是如何统计热门路线呢?用systemtap就可以,参看这里, 这里。

但是用systemtap写统计的时候,用到统计功能的话,如果你的采样点非常多,超

查看全文: http://www.udpwork.com/item/6522.html

+0  gen_tcp接受链接时enfile的问题分析及解决

Tag: Erlang探索 | 网络编程 | enfile | gdb | systemtap
Yu Feng 发于 2011年12月05日 12:16 | 点击: 2082 | 展开摘要
原创文章,转载请注明: 转载自Erlang非业余研究

本文链接地址: gen_tcp接受链接时enfile的问题分析及解决

最近我们为了安全方面的原因,在RDS服务器上做了个代理程序把普通的MYSQL TCP连接变成了SSL链接,在测试的时候,皓庭同学发现Tsung发起了几千个TCP链接后Erlang做的SSL PROXY老是报告gen_tcp:accept返回{error, enfile}错误。针对这个问题,我展开了如下的调查:

首先man accept手册,确定en

查看全文: http://www.udpwork.com/item/6466.html
|<<<123>>>| 一共3页, 28条记录