前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WCF 中 TCP 与 HTTP 性能简单比较

WCF 中 TCP 与 HTTP 性能简单比较

作者头像
用户1172223
发布2018-01-29 16:50:56
1.5K0
发布2018-01-29 16:50:56
举报
文章被收录于专栏:哲学驱动设计哲学驱动设计

在使用 WCF 时,为了更好地进行调试,我都选择了 HTTP 协议进行数据传输。最近项目对性能要求比较高,所以就换成了使用 TCP 协议。并对二者的性能进行了一个简单的测试。以下是测试结果:

环境: CPU: E5800 3.20GHz+3.19GHz RAM: 7.97GB 64 bit OS, 64 bit processor

把服务端、客户端都部署在本机进行数据传输测试。分如下场景进行测试: 1. 1000次请求,每次请求传输 1 个对象,每个对象 80 个属性: HTTP 平均耗时:6.2s左右。 TCP 平时耗时:3.9s左右。 结论:使用 TCP 连接,可以节省在建立连接时的性能消耗。对于进行大量连接时,相对 HTTP 有比较明显的性能提升。

2. 100次请求,每次请求传输 500 个对象,每个对象 80 个属性: HTTP 平均耗时:19s左右。 TCP 平时耗时:18s左右。 结论: 当使用单个连接传输大数据量时,速度则主要取决于数据序列化及网络传输速度,由于 Http 也是基于 TCP 进行传输的,所以作用较小。

反思:

由于第一次使用了外网,会有防火墙等不确定因素,造成数据失真。第二次在本地时,由于进行了数据库访问,同样可能导致数据失真。所以以上结论基于全内存数据,本地环境进行数据传输测试。

之前由于需要也进行过各种性能测试。经常懒得进行最直接的测试,而是直接使用应用程序中的环境进行测试。由于许多不确定因素:服务器、网络、数据库等,造成了数据经常失真,又不得不排除各种原因,最后还是得使用最直接最纯净的方式来进行数据测试。得不偿失啊!

以后要做性能测试,就一定要严谨,要在测试前想好纯净的测试用例,编写正式、直接的测试代码,这样其实是最省时的方法。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2013-06-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档