NeverBlock 高级非阻塞 IO 库开源项目

我要开发同款
匿名用户2008年09月17日
111阅读
开发技术Ruby
所属分类开发工具、Ruby/Rails开发工具
授权协议Ruby License

作品详情

NeverBlock是一个使用Ruby纤程进行异步数据库访问的库。在此之前,对纤程的使用意味着NeverBlock只能在Ruby1.9上运行。新发布的NeverBlock使用纤程功能的修回版本(backport)以解决这个问题。AmanGupta最近发布了一个叫做“PoorMan'sFibers”的基于Ruby线程的纤程实现(在NeverBlockGithub存储库中的纤程实现)。使用线程模拟纤程通常占用更多的资源,带来跟多内存使用和调度开销。但是,NeverBlock池化使用(pool)纤程,这样应该能限制修回版本在性能上带来的冲击。JRuby使用了一个类似的方法来为其Ruby1.9支持提供纤程(GitHub资料库中JRuby的纤程实现)。JRuby的纤程实现也将纤程映射为线程,与“PoorMan'sFibers”具有相似的性能特点。NeverBlock的创始人之一——Muhammed比较了纤程的开销和线程的开销,发现Ruby1.9的纤程耗费少得多的内存,而创建速度也快得多。NeverBlock新版本的另一个特性是它内建对Rails的支持

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论