Apache 软件基金会发布 Apache Traffic Server v3.0.0

  • 张龙

2011 年 6 月 28 日

话题:架构Apache语言 & 开发

近日,Apache 软件基金会发布了Apache Traffic Server v3.0.0。Apache Traffic Server 是个云计算服务,可以处理云中的请求,它既可以处理静态内容(图片、JavaScript、CSS 及 HTML),也可以将对动态内容的请求路由给 Web 服务器(比如 Apache HTTP Server)。

Apache Traffic Server 副主席 Leif Hedstrom 说到“Traffic Server 的处理能力非常强大,它可以在对内容传输要求非常严格的真实部署环境中处理 TB 级的数据,V3.0.0 就是以此为基础进行构建的,同时增加了一些新特性与新功能、改进了效率与性能、提升了系统正常的运行时间,并且易于使用”。

Apache Traffic Server 是个快速、可伸缩、可扩展、兼容于 HTTP/1.1 缓存代理的服务器,它具有如下特色:

  • 缓存:改进响应时间的同时降低了服务器负载与对带宽的需求,这是通过缓存并且重用经常请求的网页、图片和 Web Service 调用实现的。
  • 代理:很容易添加持续连接、过滤器或异步内容请求,还可以通过添加代理层实现负载平衡。
  • 速度:在现代的 SMP 硬件上具有很好的可伸缩性,每秒钟可以处理数以万计的请求。
  • 可扩展性:API 考虑到了自定义插件,可以修改头与内容,还可以实现新的协议处理器。
  • 可靠性:能够完美处理 TB 级别的数据,包括正向与反向代理。

Apache Traffic Server v.3.0.0 基准测试的结果是每秒钟可以处理 200,000 多个请求,相对于 v2.0 来说提升了 277%。它可以用在各种大规模的产品部署环境中,Yahoo! 使用 Apache Traffic Server 处理 400TB 的数据量,同时每天还使用它处理多达 300 亿的数据对象,包括 Yahoo! 主页、体育、邮件及财经站点。

Apache Traffic Server v3.0.0 的开发者与贡献者多达 30 人,其新特性与改进如下所示:

  • 完全的 64 位支持
  • 支持客户端的 IPv6
  • WCCP(Web 缓存通信协议)
  • 支持集群
  • 改进了主要的插件 API,简化了 API 的使用并且增加了新特性
  • 支持多种平台,包括 OSX、Solaris 与 FreeBSD(当然了,一直都在支持 Linux)
  • 改进了 RAM 缓存算法,改进了性能与内存使用
  • 现在可以对每个事务进行配置(或是每个映射规则)
  • 改进了统计与管理 API
  • 多个线程,还有一个专门的 DNS 线程
  • 构建环境更加灵活
  • 修复了众多 Bug,改善了稳定性与功能

Apache Traffic Server 在性能上的改进主要有:

  • 相比于 v2.0,v3.0 整体的吞吐量提升了 2 到 3 倍
  • 响应延迟比 v2.0 降低了 5 倍
  • 基准:对于 RAM 缓存外的小对象来说,高端服务器每秒可以处理 220,000 个请求
  • 基准:对于未被缓存的小对象来说,同样的服务器每秒可以代理 100,000 个请求

以上所有基准都是在局域网中测试的,同时使用了持续连接。

Apache Traffic Server 于 2009 年进入 Apache 孵化器,并且在第 2 年的 4 月份成为 Apache 的顶级项目,5 月份发布了 v2.0 版。要想了解 Apache Traffic Server 所用的技术,请参阅http://s.apache.org/7Or

与 Apache 的其他项目一样,Apache Traffic Server 也是基于 Apache License v2.0,由一个自我推选的小组负责管理,这些小组成员都是该项目的活跃贡献者。有个项目管理委员会负责该项目每天的运维,包括社区开发与产品发布。感兴趣的读者可以在 http://trafficserver.apache.org/ 上找到 Apache Traffic Server 的源代码、文档及相关资源。

架构Apache语言 & 开发