返回上一页  首页 | cnbeta报时: 07:01:12
新软件:轻量级的开源反向代理服务器 - smartc
发布日期:2008-02-21 14:43:45  稿源:
感谢作者投递:
相对于squid这种重量级选手,smartc是一个轻量级的反向代理.smartc将专注于HTTP协议,致力于成为高性能、轻量级的支持反向代理cache服务器.

      1)使用了很多新的系统特性,来解决用户态和内核态之间过多的内存拷贝问题,保证了内存的平稳性.
      2)最大限度的缩短数据到达网卡的距离,提升了cache响应.
      3)突破32bit系统对4G内存的限制,可以提升服务器的吞吐量和资源利用率.
      4)更多地去支持HTTP/1.1中新的特性,提升cache的性能.
      5)将使用面向结构的LUA语言来设计各类配置项,缩短用户的学习时间.
Smartc的特性:
1 支持异步io
2 支持异步的sendfile系统调用
3 支持文件映射mmap
4 支持If-Modified-Since条件验证
5 支持千万级别的document存储,专为大存储设计的Hash
6 支持32位OS,超过4G内存限制
7 支持epoll
8 支持结构化的配置语言LUA,让系统管理人员获得更多的主动权.

新闻扩展部分:
现有特性:
1 支持异步io
2 支持异步的sendfile系统调用
3 支持文件映射mmap
4 支持If-Modified-Since条件验证
5 支持千万级别的document存储,专为大存储设计的Hash
6 支持32位OS,超过4G内存限制
7 支持epoll
8 支持结构化的配置语言LUA,让系统管理人员获得更多的主动权.

存在的问题:

1 不支持>2G文件
2 不支持用户进程内存,和共享内存的cache置换算法
3 不支持HTTP/1.1的keep-alive特性
4 不支持HTTP/1.1的Vary特性
5 不支持HTTP/1.1的ETag和If-None-Match条件验证

运行环境:

1 安装有LUA5.1版本以上
2 RedHat 企业版4或以上版本,及其他Linux发行版.在RedHat 企业版4进行测试,可以顺利安装运行.

发布时间:

1 开发时间已经于2008.2.17基本结束.大概需要3个星期的时间来进行回归测试,并即时完成各种bugfix.
2 初步定为2008.3月底发布


一 现在的互联网

   在web刚兴起的时候,互联网估计主要是用来解决document共享的问题.从当时的HTTP/0.9版本上,可见一斑.到后来用户逐渐的增多,以及apache的成功,和HTTP/1.0的推出,使得互联网的数据业务量出现极大的增长.HTTP/1.0已经提出了caching的概念,设计者估计也看到了网络拓扑结构的复杂性,不是单纯的web server就可以应对的.HTTP/1.1在1.0的基础,对caching又做了进一步的改进.

   现今,绝大多数的互联网数据业务都是基于HTTP/1.1开展的.由于数据量的激增,web caching在提升整个互联网的体验方向上,显出了极为重要的生态价值.web caching在减少带宽消耗,加快用户访问速度,应用层的负载均衡方面,发挥着很重要的作用.

    尤其web2.0的出现,互联网数据量相对web1.0又有了一次成倍的增长,像Youtube之类的视频网站,每日的访问量都是相当庞大的.

二 为什么不用Squid

    Squid和apache几乎是属于同时代的产品,很好的应对了web1.0时代的互联网数据业务.Squid一个非常庞大的proxy,不仅支持HTTP,而且支持FTP,并且支持很多种cache协议,如ICP等等.几乎proxy产品需要的功能,squid都具有.

     squid是基于单进程、单线程实现的,使用了最基本的read/write来处理读写问题,和用户级别的进程内存来缓存某些小的document.由于read/write的系统调用,可能会导致用户态和内核态多次的内存拷贝,尤其是向网卡发送数据时,可能导致系统的内存抖动.在32bit的操作系统上,squid的内存使用始终无法超越3G.在处理小文件的cache问题时,squid的吞吐量非常低.squid的配置项,异常庞大,需要较长的学习周期,才能很好的掌握.

开始新的体验吧

     smartc是本人从2007.6月份开始思考的一个产品,中间阅读了很多其他的优秀开源server,包括lighty,nginx,squid等.经历了多次框架的从新设计和比较,最终以单进程作为框架.经过08年春节期间,严肃的思考和代码修改,于2008.2.17日代码工作基本完成,代码辗转书写了1万行左右,历时5月之久.

     开始新的体验吧,不只是squid.

访问:Smartc 源码地址
我们在FebBox(https://www.febbox.com/cnbeta) 开通了新的频道,更好阅读体验,更及时更新提醒,欢迎前来阅览和打赏。
查看网友评论   返回完整版观看

返回上一页  首页 | cnbeta报时: 07:01:12

文字版  标准版  电脑端

© 2003-2025