注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

mie

 
 
 

日志

 
 

EasyStressTest压力测试工具1  

2014-07-04 11:12:06|  分类: 网络开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

地址:https://github.com/zhanyonhu/EasyStressTest

        无聊,就弄了个开源项目。我本来是非常反对开源的。一来这会使程序员的价值贬值,使得一些人滥竽充数,将开源代码据为己有;另外,开源项目鱼龙混杂,且代码质量较为杂乱,代码风格不够规范,存在较多的内存泄漏等问题。

        去年下半年,试了一下miniweb、3proxy,后来又接触了qt,也让我对开源的看法有了改观。于是就想自己也弄个开源的玩玩。

        这个EasyStressTest压力测试工具只是个玩具。这类工具的使用者一般是公司职员,而且大多只是用几天就扔了,所以,其本身的用处不是很大。——当然,我暂时也不太想做用处太大的东西。

       

        EasyStressTest采用的是gyp跨平台构建工具,基于C++和TinyCC实现。所以,您必须安装GIT、Python、C++编译器。其次,您需要使用git来下载源码工程。

        为了编译方便,在windows平台,直接运行vcbuild.bat就可以为您生成vc工程,并编译;在linux/unix平台,可以运行autogen.sh来编译。这将为不熟悉某些开发工具的朋友提供便利。

        如果还不清楚,请看一下工程目录的readme.md,英文有点蹩脚。

 

        现在你应该已经知道如何编译了。下面简单说一下其实现。只是玩玩,所以尽量借用已有的功能模块。

        底层实现。最初选定的是ACE,然而,我彻底被ACE乱七八糟的宏给打垮了。这样的代码如何维护?我不认为效率是宏滥用的万能借口,代码简洁才是关键。什么模式啊,乱七八糟的,我们平时不经意的就使用了一些设计模式,然而设计模式理论化的结果是,一些人为了设计模式而设计模式,代码杂乱无章。ACE就是典型,所以,设计模式真能让代码规范化吗?ACE已经给出了答案。

        libevent是不行的,因为windows下的效率极低。libev也差不多,而且文档极少。其他的网络库都没听说有过具体的大规模应用,所以只能是libuv了。

        脚本。javascript、lua、tcc。为什么选择这三个?效率!javascript有v8,lua已经广泛应用,tcc基于c。应该说,tcc速度必然是最快的,编译后直接就是二进制代码,或者可以认为是内存dll、shellcode之类的吧。javascript有V8,效率会很高,且代码可读性好很多(相对lua)。我还是选择tcc,c/c++语法,看起来舒服。

 

        By:zhanyonhu

  评论这张
 
阅读(396)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016