原文
It may be possible to use IOCompletionPorts on Windows to implement apr_pollset_*. IOCPs
aare very scalable
but moving to IOCPs will require a complete rewrite of the apr_socket implementation on Windows.
And there is
the small matter of a simple technical issue that needs to be investigated. ...
IOCP 对于高并发的应用程序提供了良好的支持,使得开发高并发的应用程序的难度降低了很多。
IOCP 作为系统底层的 API ,保持了尽可能高的灵活性,对于很多复杂的情况,IOCP 也一样适用。
这种灵活性是一种双刃剑,对于复杂的情况,没有这种灵活性就没有办法完成工作。
但是对于简单的情况,这种灵活性就带来了额外的负担。
这里将要提到的这个服务器框架(spserver/iocp版),主要是针对以下的这几种典型的应用程序
1.echo/http 类型,server 不需要在多个 client 之间转发消息
2.chatroom 类型,server 在多个 client 之间转发消息
在使 ...
mysql 6 中关于网络层 IO 的设计,在下面这个链接中讲了大体的思路
http://forge.mysql.com/worklog/task.php?id=441
首先提到了目前的设计,one_thread_per_connect 模型。
引用
......
- A new thread is created to serve this socket. (Actually, with a
thread cache, it might reuse an existing thtread.)
......
In short: The above design does not scal ...
在参考了一些资料,并且尝试了几次之后,也逐渐想到了一个用来安全释放 IOCP 资源的办法。
http://groups.google.com/group/dev4server/browse_thread/thread/29a91064931a628e
接着发现有人已经把这种方案描述的很清楚了
http://blog.codingnow.com/2007/07/robust.html#comment-12142
对大家的讨论不置可否,但是使用ID代替指针确实在某些方面是有益处的。
而某些时候我们无法使用智能指针。举个例子,完成端口中
GetQueuedCompletionStatus( ...
- 浏览: 79330 次

- 详细资料
搜索本博客
我的相册
vim
共 2 张
共 2 张
最近加入圈子
最新评论
-
集成 IOCP 到 Libevent
去找了 memcached for win32 的源代码,结果可以顺利编译,并且 ...
-- by iunknown -
集成 IOCP 到 Libevent
qiezi 写道GetQueuedCompletionStatusEx也支持超时 ...
-- by iunknown -
集成 IOCP 到 Libevent
GetQueuedCompletionStatusEx也支持超时,用它代替sel ...
-- by qiezi -
集成 IOCP 到 Libevent
linux/solaris上的aio有多种回调/通知方式,可能和libevent ...
-- by qiezi -
集成 IOCP 到 Libevent
SPServer是一个很不错的框架,受到启发,我用boost::asio实现了一 ...
-- by wow






评论排行榜