平庸与杰出=加法与减法

思考其乐无穷 IT剩者为王

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
关于 WCF 中数据压缩的几篇文章中大概介绍了针对WCF的压缩,下面对里面提到的两个开发包进行测试。

目前能找针对WCF的压缩扩展主要有两个,一个是MS在TechnologySamples提供的,另外一个是WS-Compression for WCF(   http://weblogs.asp.net/cibrax/archive/2006/03/29/441398.aspx)

测试办法:能力有限,没有办法测试内存对象的大小,采用折衷的办法:通过比较压缩前数据、压缩后数据分别从服务器端传送到客户端的时间来确定大概压缩率。

测试数据情况:单表,20个字段,字段内容大概300个字符,

网络情况:为了测试压缩率所以客户端和服务器在同一台机器上。

机器配置:酷睿双核1.83,2G内存

1万行数据测试情况:
未压缩:                    平均11m
WS-Compression(Maximum)     平均8M
WS-Compression(Normal)     平均7M
WS-Compression(Fast)     平均7M
GZipEncoder压缩:           平均4M

另外在WS-Compression开发包占用内存比较大,1万条数据大概350000K,而 GZipEncoder只有130000K。

这两个开发包都是采用了GZip算法,但是两者的压缩效率相差不少。WS-Compression提供了Maximum、Normal、Fast还有NoCompression四种压缩级别,但是从测试来看,前三种差别不大,总体压缩率在64%的样子;而GZipEncoder压缩率在36%的样子。同样采用GZip算法,不知道为何两者差别这么大,详细代码没有看,原因不清楚。惭馈,俺是比较标准的拿来主义

最后对MS赞一个
--畅所欲言,随心而谈--
本博客文章全部原创,转载请注明出处,谢谢
紫辰友创软件公司 http://www.bornsun.net/
版权所有 jiabao.cnblogs.com 转载请联系
posted on 2007-12-06 16:03 我是蚂蚁 阅读(1812) 评论(5)  编辑 收藏 所属分类: WCF

评论

#1楼  2007-12-06 17:29 江南白衣      
为什么要一次传送这么大的数据?
  回复  引用  查看    

#2楼  2007-12-06 18:14 we [未注册用户]
ls的,这不是测试吗,数据量大才能看出来问题。
  回复  引用  查看    

#3楼  2007-12-06 18:36 idior      
WS-Compression是为了实现互操作效率上肯定是不能跟一个自定义的Encoder比的。
  回复  引用  查看    

#4楼 [楼主] 2007-12-06 18:58 我是蚂蚁      
--引用--------------------------------------------------
idior: WS-Compression是为了实现互操作效率上肯定是不能跟一个自定义的Encoder比的。
--------------------------------------------------------
呵呵,有道理:)
  回复  引用  查看    

#5楼  2007-12-10 00:03 流水线 [未注册用户]
学习一下!
  回复  引用  查看    


标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-12-06 18:59 编辑过
 
另存  打印
最新IT新闻:
· 《福布斯》:暴雪的新一波完美风暴已经到来
· 中国互联网公司在哪儿
· 微软:Silverlight内容也可被搜索引擎检索
· 内置AI技术 三星聪明微波炉还能上网
· 盛大设文学公司 原新浪博客负责人侯小强任CEO