这周读到一篇文章:Dtrace isn’t just a tool; it’s a philosophy。作者认为dynamic tracing
工具目前在Linux
中并不很受重视,而这则源于Linux
开发者们的一些观念。而与此对应的是Bryan Cantrill
,他认为tracing
很重要,因此才诞生了DTrace
这个强大的工具。个人觉得,这些观点“仁者见仁,智者见智”,不同的人可能看法不一。而我自己读完这篇文章,有以下几点感想:
(1)作者在文中提到他和Adam Leventhal
在一次模拟面试中,如何利用DTrace
把一个performance
问题一步一步地解决掉。而这也让我学到了使用DTrace
的一个重要方法:从源头出发,用DTrace
把困扰你的问题一个一个击破,最终就能找到答案。
(2)必须要承认,目前Linux
服务器数量远远超过FreeBSD/illumos-kernel
等其它服务器。因此,掌握一些在Linux
上tracing
的工具和方法是非常必要的。作者在这篇文章中提到了一些方法,诸如使用火焰图,等等。所以,个人觉得是不是每名使用Linux
的工程师都应该掌握一到两种tracing
工具,并总结出一些适合自己工作领域的行之有效的方法呢?因为很有可能在你走投无路时,这些工具和方法就能帮到你。