`
- 浏览:
62712 次
- 性别:
- 来自:
深圳
-
Thin:更快的Ruby Web服务器
作者 Sebastien Auvray译者 王锐 发布于 2008年2月26日 上午12时40分
社区
Ruby
主题
性能和扩展性,
Web框架
现在Mongrel 已经成了Ruby Web服务器的默认选择(参见Zed Shaw在QCon London 2007上的演讲:creator of Mongrel)。 但是一个叫做 Thin的新的试验性的解决方案目前已经可以使用。Thin将以下三个Ruby的Web库整合在了一起:
Mongrel parser,(使用Ragel)Mongrel 速度与安全性的基础。
Event Machine,一个简单的时间处理Ruby库,用于开发可伸缩的网络I/O处理程序。
Rack,位于支持Ruby的Web服务器与Ruby框架之间的一个最小化的接口。
Marc-André Cournoyer在最近的Montreal on Rails社区大会上做了一个关于关于Thin的演讲 ,展示了Thin的优势。
性能改善很显著,可以达到每秒请求数增长25%和约减少15%的内存使用,这还是在速度已经被花在Rails上的时间降低了的情况下取得的。
自2008年1月份发布的0.6.1版起,Thin支持UNIX sockets和TCP/IP sockets的监听,并正在使其变得更加快速。
Thin:更快的Ruby Web服务器 - downsea - 生物信息学
Thin:更快的Ruby Web服务器 - downsea - 生物信息学
图片由Marc-André Cournoyer提供
Thin已经可以支持绝大部分Ruby的Web框架了,如Rails,Merb,Camping,Sinatra,Ramaze,Vintage,Swiftiply。
Thin项目诞生已经三个月了,在一个产品级的发布出来之前,它值得一试。
查看英文原文:Thin The Fast Ruby Web Server
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
5. **性能**:Puma在许多基准测试中表现出色,通常比其他Ruby Web服务器(如Webrick、Thin等)更快。它在高并发场景下尤其出色,能有效应对突发流量。 6. **兼容性**:Puma与大多数Ruby版本和Rails版本兼容,包括...
在性能测试中,Puma通常表现出比其他Ruby Web服务器(如Webrick、Thin)更好的性能。这得益于其多线程模型和高效的内存管理。然而,对于CPU密集型任务,单线程服务器如Unicorn可能会更有优势,因为它们减少了线程上...
它比 Thin 本身更快,因为它允许您发送非常自定义的响应,即使对于类似 Rack 的响应,它也不会对您的输出进行很多检查。 但这意味着,你对你的回应负责:) Rack hello world,在 Core i3@1600Mhz 上用 +ab -k -c 500...
Rack是Ruby世界中的一个轻量级、灵活的Web服务器接口规范,它定义了一个统一的标准,使得Ruby Web应用能够与不同的Web服务器无缝集成。Rack简化了Ruby Web应用的部署过程,同时也提供了强大的功能和扩展性。 #### ...
`projector-ruby` 通过集成 Rack,允许开发者将他们的应用程序部署到任何支持 Rack 的服务器上,如 Thin、Puma 或 Webrick。Rack 的灵活性使得 `projector-ruby` 具有高度可扩展性,可以与其他 Rack 中间件结合使用...
Phusion Passenger取代了Thin和Unicorn ,并充分利用Nginx来更快,更好地为您的Ruby应用程序提供服务。 以下是使用Phusion Passenger可以为您带来的好处的列表: 通过Nginx加速静态资产-不要让您的Ruby应用提供...
与Ruby相比,Crystal编译后的代码运行速度更快,同时保留了Ruby的易读性和开发效率。这使得Crystal成为构建高性能Web服务和工具的理想选择,尤其是对于需要处理大量网络请求的项目,如Git后端服务器。 **Grack** ...
Sinatrahaml 是一个 Ruby 框架 Sinatra 的扩展,它提供了更简洁的语法,主要用于构建轻量级 web 应用程序。这个版本可能是 ian scott wilson 对网站的一种定制实现,可能包含了特定的功能或优化。 **描述解析:** ...
8. **部署**: 项目可能部署在像Heroku、Dokku或自建的服务器上,利用如Puma或Thin这样的Web服务器运行Sinatra应用,并可能使用如Docker进行容器化部署,以便更好地管理和扩展服务。 总的来说,"ROR_shopping_...
在生产环境中,通常会用到如Passenger、Thin等服务器。配置过程依赖于具体的服务提供商,但通常涉及设置环境变量和启动脚本。 ### 七、总结 Sinatra项目食谱为你提供了一个基本的Sinatra应用结构,包括路由处理、...
4. **非阻塞I/O**:Sinatra通常与Rack协议结合使用,可配合如Puma或Thin等Web服务器,实现异步处理,提高应用性能。 尽管项目已废弃,我们仍能从中学习到Sinatra框架的基本结构和Web应用开发的基本原理。例如,了解...
完成本地开发后,Sinatra 应用可以通过各种方式部署,如使用 Thin、Puma 或 WEBrick 服务器,也可以通过 Heroku、DigitalOcean 等云平台进行托管。 总之,`sinatra-portfolio-project` 是一个基于 Ruby 的 Sinatra...
Sinatra 项目通常部署在支持 Rack 协议的服务器上,如 Puma、Unicorn 或 Thin。本地开发时,可以使用 Webrick 或 Pow。在生产环境中,常见的部署平台包括 Heroku、DigitalOcean 和 AWS。 8. **测试** 对于测试,...