AICon 上海站|90%日程已就绪,解锁Al未来! 了解详情
写点什么

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:461006
用户头像

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

关注

评论

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

Flink程序优化及反压机制

大数据技术指南

flink 3月日更

oktoken跟单社区系统开发|oktoken跟单社区APP软件开发

系统开发

浅论指针(一)

Integer

c c++ 指针

怎样从零开始设计一个数据库

学Java的猪猪侠

关于全球央行数字货币实验的若干认识与思考

CECBC

银行

爆肝一周总结了一份Java学习/面试自测指南!200+道Java最常见面试题。

Java架构之路

Java 程序员 架构 面试 编程语言

Apache Iceberg学习日志

InfoQ_Springup

数据湖

K8s 原生 Serverless 实践:ASK 与 Knative

阿里巴巴云原生

Serverless 容器 云原生 k8s 存储

技术中台之DevOps动态表单体系构建

EAWorld

户口?大厂?高薪?生活?聊聊应届程序员的职业选择

流沙

职业发展

2021面试跳槽宝典:BATJ大厂核心面试解析600题

比伯

Java 架构 面试 程序人生 计算机

引入单点登录,需要考虑哪些问题?

龙归科技

SSO 单点登录

浅论指针(二)

Integer

c 指针

中国唯一入选 Forrester 领导者象限,阿里云 Serverless 全球领先

阿里巴巴云原生

阿里云 Serverless 容器 开发者 云原生

【操作系统】存储器管理

学Java的猪猪侠

MapReduce的运行机制详解

五分钟学大数据

hadoop 3月日更

oktoken对冲合约软件APP开发|oktoken对冲合约系统开发

系统开发

源码解读:KubeVela 是如何将 appfile 转换为 K8s 特定资源对象的

阿里巴巴云原生

容器 云原生 k8s API 应用服务中间件

硬件测试的思考和改进:有道词典笔的高效测试探索

有道技术团队

大前端

2021版金三银四Java面试突击手册开源(涵盖p5-p8技术栈),“吊打”面试官的“葵花宝典”

Java 编程 程序员 架构 面试

会声会影最新版:会声会影2021中文版它来啦!

奈奈的杂社

视频剪辑 视频后期 自媒体 视频处理 会声会影

设计模式--享元模式

学Java的猪猪侠

关系数据理论是个什么牛马

学Java的猪猪侠

一年增加 1.2w 星,Dapr 能否引领云原生中间件的未来?

阿里巴巴云原生

容器 微服务 云原生 k8s 中间件

「产品经理训练营」第八章作业

Sòrγy_じò ぴé

操作系统--虚拟存储器概述

学Java的猪猪侠

行业首创,百度自主研发下一代区块链操作系统

CECBC

原子操作

API 工具链研发的理论基础 - 导读

李宇飞

工具链 API sdk

后端服务器网络编程之 IO 模型

Linux服务器开发

后端 网络编程 web服务器 Linux服务器开发 网络io

缓存为什么会被污染?

escray

redis 学习 极客时间 3月日更 Redis 核心技术与实战

基于docker部署jenkins(一)

李日盛

docker jenkins

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