AsyncIO

swoole1.6.12后增加了异步文件读写,异步DNS等特性。自此建立了完整的异步并行API。

swoole_async_set

此函数可以设置异步IO相关的选项。

swoole_async_set(array $setting);

Linux Native AIO的优点是由内核支持是真正的异步文件IO,缺点是只支持DirectIO,无法利用到系统的PageCache

for($i=0; $i < 100; $i++) {
    swoole_async_dns_lookup("www.baidu$i.com", function($host, $ip){
        echo "{$host} reslove to {$ip}\n";
    });
}