feisky

云计算、虚拟化与Linux技术笔记
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2012年3月2日

摘要: 引言“Oops,系统挂死了..."“Oops,程序崩溃了..."“Oops,命令执行报错..."对于维护人员来说,这样的悲剧每天都在上演。理想情况下,系统或应用程序的错误日志提供了足够全面的信息,通过查看相关日志,维护人员就能很快地定位出问题发生的原因。但现实情况,许多错误日志打印模凌两可,更多地描述了出错时的现象(比如"could not open file","connect to XXX time out"),而非出错的原因。错误日志不能满足定位问题的需求,我们能从更“深层”的方面着手分析吗?程序或命令的执行,需要通过 阅读全文

posted @ 2012-03-02 17:57 feisky 阅读(556) 评论(0) 推荐(0) 编辑

摘要: 本文为原创文章,出自http://cnodejs.org,转载请注明出处和作者作者:爱多原文:http://cnodejs.org/blog/?p=2426 在高性能的服务器编程中,IO 模型理所当然的是重中之重,需要谨慎选型的,对于网络套接字,我们可以采用epoll 的方式来轮询,尽管epoll也有一些缺陷,但总体来说还是很高效的,尤其来大量套接字的场景下;但对于Regular File 来说,是不能够用采用 poll/epoll 的,即O_NOBLOCK 方式对于传统文件句柄是无效的,也就是说我们的 open ,read, mkdir 之类的Regular File操作必定会导致阻塞... 阅读全文

posted @ 2012-03-02 17:21 feisky 阅读(2444) 评论(0) 推荐(0) 编辑

摘要: 知道异步IO已经很久了,但是直到最近,才真正用它来解决一下实际问题(在一个CPU密集型的应用中,有一些需要处理的数据可能放在磁盘上。预先知道这些数据的位置,所以预先发起异步IO读请求。等到真正需要用到这些数据的时候,再等待异步IO完成。使用了异步IO,在发起IO请求到实际使用数据这段时间内,程序还可以继续做其他事情)。假此机会,也顺便研究了一下linux下的异步IO的实现。linux下主要有两套异步IO,一套是由glibc实现的(以下称之为glibc版本)、一套是由linux内核实现,并由libaio来封装调用接口(以下称之为linux版本)。glibc版本接口glibc版本主要包含如下接口: 阅读全文

posted @ 2012-03-02 17:19 feisky 阅读(3721) 评论(0) 推荐(1) 编辑

无觅相关文章插件,快速提升流量