写点什么

Ruby 的 Net::HTTP 怎么了?

  • 2008-11-17
  • 本文字数:457 字

    阅读完需:约 1 分钟

有人可能会问:“Ruby 对 Net:HTTP 的实现出什么问题了”?Adam Nelson 对应用传输大量数据时的表现感到很吃惊。“当数据以 1024 字节块的大小被传输时,我看到了 CPU 的红线”,这是 Adam 在其初次分析时所发现的。实际的问题是“Ruby 针对每个单独的rbuf_fill 调用都设置一个超时”, Alex Young 说到,“那么在默认情况下,每接收到 1K 数据,就必须产生一个新的线程”。

针对Ruby 不同的实现和不同的库所进行的一个比较表明Ruby 1.8.6 对CPU 的占有率竟然达到了1.8.7 版的两倍,显然后者使用了更大的缓存(16K)。有趣的是,Ruby 1.9.0 对CPU 的占有率最低,其实现采用了 readpartial :“不对 socket 读取设置超时”,同时“提前为每次读取分配字符串缓存”。紧追其后的是 RFuzz ,这是一个纯粹的 Ruby 实现,基于 Zed Shaw 所编写的 Mongrel 内核。

该问题早就有人提出来了,2006 年的一个关于ruby-talk 的邮件列表中就有人在讨论该问题,同时提出了该问题的解决方案。此外,这也证明开源对于我们的帮助和价值是多么大啊。

查看英文原文: What Is Wrong With Ruby’s Net::HTTP?

2008-11-17 09:461068
用户头像

发布了 88 篇内容, 共 273.0 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

MongoDB源码学习:创建记录和索引(insertDocuments)

云里有只猫

mongodb 源码解读

性能测试|JMeter参数化(一)

霍格沃兹测试开发学社

App自动化测试|Appium-Desktop界面介绍

霍格沃兹测试开发学社

Python 测试 appium

接口测试|postman的介绍和安装

霍格沃兹测试开发学社

2023-07-23:给你 n 个任务和 m 个工人 每个任务需要一定的力量值才能完成 需要的力量值保存在下标从 0 开始的整数数组 tasks 中 第 i 个任务需要 tasks[i] 的力量才能完

福大大架构师每日一题

福大大架构师每日一题

代码随想录训练营Day24 - 回溯(一)

jjn0703

性能测试|JMeter逻辑控制器(三)

霍格沃兹测试开发学社

性能测试|JMeter逻辑控制器(四)

霍格沃兹测试开发学社

时光“摆渡者”,让回忆“闪现”眼前

脑极体

Dubbo Triple 协议重磅升级:支持通过 HTTP 连通 Web 与后端微服务

阿里巴巴云原生

阿里云 云原生 dubbo

性能测试|JMeter逻辑控制器(六)

霍格沃兹测试开发学社

性能测试|JMeter逻辑控制器(九)

霍格沃兹测试开发学社

性能测试|JMeter连接数据库

霍格沃兹测试开发学社

具身智能,是机器人的“冷饭热炒”吗?

脑极体

AI

对比 5 个开源网关项目,这家 SaaS 企业如何统一网关架构

阿里巴巴云原生

阿里云 微服务 云原生 SaaS

性能测试|JMeter逻辑控制器(二)

霍格沃兹测试开发学社

接口自动化测试|Requests库的安装与介绍

霍格沃兹测试开发学社

性能测试|JMeter逻辑控制器(八)

霍格沃兹测试开发学社

App自动化测试|Appium元素定位工具

霍格沃兹测试开发学社

Python 测试 appium

vscode配置gitbash终端

芯动大师

代码随想录 Day22 - 二叉树(八)

jjn0703

App自动化测试|Appium介绍

霍格沃兹测试开发学社

Python 测试 appium

App自动化测试|原生app元素定位方法

霍格沃兹测试开发学社

代码随想录Day25 - 回溯(二)

jjn0703

性能测试|JMeter逻辑控制器(五)

霍格沃兹测试开发学社

性能测试|JMeter逻辑控制器(七)

霍格沃兹测试开发学社

性能测试|JMeter逻辑控制器(十)

霍格沃兹测试开发学社

App自动化测试|Appium+Python自动化测试环境搭建(Windows)

霍格沃兹测试开发学社

Python 测试 Node appium

App自动化测试|Appium工作原理及Desired Capbilities配置

霍格沃兹测试开发学社

Python 测试 appium

App自动化测试|原生App元素定位方法(二)

霍格沃兹测试开发学社

Ruby的Net::HTTP怎么了?_Ruby_Mirko Stocker_InfoQ精选文章