开发模式

linux异步IO编程实例分析

4

在Direct IO模式下,异步是非常有必要的(因为绕过了pagecache,直接和磁盘交互)。linux Native AIO正是基于这种场景设计的,具体的介绍见:KernelAsynchronousI/O (AIO) SupportforLinux。下面我们就来分析一下AIO编程的相关知识。

       阻塞模式下的IO过程如下:
(更多…)

libeio源码分析 – 主流程

6


@淘宝千石

简介

This library provides fully asynchronous versions of most POSIX functions dealing with I/O. Unlike most asynchronous libraries, this not only includes read and write, but also open, stat, unlink and similar functions, as well as less rarely ones such as mknod, futime or readlink. It also offers wrappers around sendfile (Solaris, Linux, HP-UX and FreeBSD, with emulation on other platforms) and readahead (Linux, with emulation elsewhere>). The goal is to enable you to write fully non-blocking programs.

缘起

相信上面这段话已经将libeio的feature讲的足够清楚:提供全套异步文件操作的接口,让使用者能写出完全非阻塞的程序。阻塞意味着低效,但非阻塞一定要有很好的通知机制才能做到高效。
(更多…)

面向对象编程和面向过程编程的区别

11

随便记一下晚饭时说的话。

所有的电影,其实都是导演的内心独白。

但内心独白,别人是很难跟得上的,

除非你是雨果那样的大师,有《悲惨世界》那样的作品。

电影基本要靠戏剧冲突来表现主题。

所以有了人物、情节。

所以电影才能缤纷多彩、被人理解。

这就是面向对象编程和面向过程编程的区别。

敏捷开发在部门内的应用

1

1、每个迭代过程必须有一个release版本是否适用?
从多个方面去考虑这个问题
1)作为一个底层项目开发部门,架构和整体设计至关重要,而这些是否可以通过迭代的过程逐步完善?带来的重复工作量是否可以承受?
2)当前的架构设计是否充分,或者说我们是否有能力在初始阶段对系统的整体性能和风险做出足够的预估?
3)功能的切分是否可以做到细致并在每个迭代周期满足用户的使用需求?

(更多…)

Go to Top