当前位置: 首页 > news >正文

台州网站制作价格武极云主机

台州网站制作价格,武极云主机,罗源城乡建设网站,企业宣传类网站建设2019独角兽企业重金招聘Python工程师标准 Struts2、SpringMVC、Servlet(Jsp)性能对比 测试 。 Servlet的性能应该是最好的#xff0c;可以做为参考基准#xff0c;其它测试都要向它看齐#xff0c;参照它。 做为一个程序员#xff0c;对于各个框架的性能要有… 2019独角兽企业重金招聘Python工程师标准 Struts2、SpringMVC、Servlet(Jsp)性能对比 测试 。 Servlet的性能应该是最好的可以做为参考基准其它测试都要向它看齐参照它。 做为一个程序员对于各个框架的性能要有一个基本的认知便于选型时做出正确的决策。 在测试中发现了什么也不要大喊大叫因为这些都是Java程序员的基础知识。 人人都要了解。 ---------------------------------------------------------------------------------------   建议先阅读《你想建设一个能承受500万PV/每天的网站吗 》一文了解一些测试的基本概念。在测试开始前就有一个性能好与坏的标准。再用这个标准来检验你程序。 --------------------------------------------------------------------------------------- 测试环境说明 服务器 4G内存至强3.0 4核超线程CPUwindows 2003 测试机笔记本 2G内存p8600 双核CPUwindows XP 网络100Mb局域网 测试软件 Jmeter 2.3.4    分配了512M内存 tomcat 6  默认内存大小 --------------------------------------------------------------------------------------- 测试配置如下图 其实jmeter还是很弱的我打开集合点synchronizing Timer,察看结果树用表格查看结果中的任何一个都会导致测试结果中的性能下降和小部分请求的响应出错可能是线程数太多了所以禁用了。只启用了cookie管理器。 --------------------------------------------------------------------------------------- Tomcat6.0 配置文件的说明 做测试之前是要整清楚的。 默认的Server.xml中如下 Xml代码   Connector port8080 maxHttpHeaderSize8192   maxThreads150 minSpareThreads25 maxSpareThreads75   enableLookupsfalse redirectPort8443 acceptCount100   connectionTimeout20000 disableUploadTimeouttrue /      enableLookups 是否允许DNS查询当web应用程序要通过域名服务器查找机器名转换为IP地址时。会使用DNS查询需要占用网络延长较长 maxThreads Tomcat可创建的最大的线程数每一个请求须要一个线程来处理原来的150太小了我们测试时并发会超过他的。 acceptCount 指定当所有可以使用的处理请求的线程数都被使用时可以放到处理队列中的请求数就是被排队的请求数超过这个数的请求将拒绝连接。 connnectionTimeout 网络连接超时单位毫秒。设置为0表示永不超时这样设置有隐患的。通常可设置为20000毫秒。 minSpareThreads Tomcat初始化时创建的线程数 maxSpareThreads 一旦创建的线程中空闲线程超过这个值Tomcat就会关闭不再需要的socket线程。 注意maxThreads 设置为500 也就是Tomcat最多同时使用500个线程处理500个并发(服务器CPU不错500没问题)不要发生 排队等待的情况以免影响测试成绩 为下面的压力测试做好准备。 ---------------------------------测试开始了------------------------------------------- 测试时服务器CPU使用率 10% 测试时测试机CPU使用率 100%(测试机不行啊主要是 Jmeter的性能一般又吃内存测试机p8600 双核CPU还是很强的 ) 每次测试CPU都这样就统一写这里了。 测试1JSP页面--2213个请求/秒 100并发循环100次共10000个请求请求一个大小3.34KB的jsp页面。 测试2JSP页面--1889个请求/秒 100并发循环100次共10000个请求请求一个servlet总控制器验证权限后(很简单)new一个Action,再转发到一个大小3.34KB的jsp页面。 测试3HTML页面--2607个请求/秒 100并发循环100次共10000个请求请求一个3.2KB的html页面。 测试4 HTML页面-- 833个请求/秒 100并发循环100次共10000个请求请求一个13.4KB的html页面。与上面比是只是文件大了一些把网卡跑满了 网卡成为了性能瓶颈RPS降了不少 测试5 Spring MVC   2012个请求/秒 100并发循环100次共10000个请求请求一个spring3 MVC的action,再转发到一个0.8K的JSP其内容是简单的html 测试6 Spring MVC    1800-1924个请求/秒 100并发循环100次共10000个请求请求一个spring3 MVC的action,两个参数类型转换为int、Date再new 一个List再转发到一个1.3K的JSP,用JSTL标签显示List中的内容。 JSTL标签内容是如下看来JSTL标签性能还是不错的。 Java代码   c:if test${empty list}   tr   td aligncenter无记录/td   /tr   /c:if   c:if test${not empty list}   tr   th从 1 开始的迭代计数/th   th从 0 开始的迭代计数/th   th产品名称/th   /tr   c:forEach items${list} varitem varStatuss   tr bgcolor${s.index%20?#E2E2E2:}   td aligncenter${s.count}nbsp;/td   td aligncenter${s.index}nbsp;/td   td aligncenter${item}nbsp;/td   /tr   /c:forEach   /c:if     测试7 访问一张图片srping方式一   1997个请求/秒 100并发循环100次共10000个请求. 因为我使用了spring3 MVC拦截/所以图片不能访问所以添加了 Xml代码   servlet-mapping            servlet-namedefault/servlet-name            url-pattern*.jpg/url-pattern        /servlet-mapping      走默认的servlet来访问2.5K的图片 测试8 访问一张图片 srping方式二    1967个请求/秒 100并发循环100次共10000个请求因为我使用了spring3 MVC拦截/所以图片不能访问所以添加了 mvc:resources mapping/images/** location/images/ cache-period31556926/ 来访问2.5K的图片会走spring的可匹配的一个拦截器。     测试9Struts2  使用官方提供的示例程序 使用了Struts2标签   几十个请求/秒 100并发循环1次没有循环100次因为strtus2在这次测试中响应太慢了我等不起了所以单个url的测试样本从10000降到了100.一共11个url共1100个样本。 spring 使用的就是前面“测试5”的URL放在这里是为了与strtus2对比的。 html   使用的就是前面“测试3”的URL放在这里是为了与strtus2对比的。 struts2-1 使用的是官方自带的示例项目名称是struts2-blank-2.1.8.1.war struts2-2 使用的是官方自带的示例项目名称是struts2-showcase-2.1.8.1.war我在其中随便选了一个action来做测试 struts2-3 同上 struts2-4 同上 struts2-5 同上 struts2-6 同上 struts2-7 同上 struts2-8 同上 struts2-9 同上 未对Struts2做优化使用的都是官方带的示例Struts2的测试结果不理想放在这里做一个参考。“struts2-1”是struts2中测试成绩是本次最高的但也不十分理想。 测试10Struts2   官方提供的 示例程序 使用Struts2标签--s:property   1192个请求/秒 上一个测试结果糟糕的太离谱了第二天想了想又开始重新测试使用的还是struts2官方提供的struts2-blank-2.1.8.1.war示例。 访问下面的action    http://192.168.0.5/struts2/example/HelloWorld.action   action内容很简单就是转发到一个JSP。 下图是使用官方示例中默认的action我没有修改结果如下图 这里要说一说转发到的jsp中的内容,其中有struts2标签如下 Xml代码   s:property valuemessage/   s:url idurl actionHelloWorld        s:param namerequest_localeen/s:param   /s:url   s:a href%{url}English/s:a       测试11Struts2   官方提供的 示例程序 不使用Struts2标签   1976个请求/秒--优秀啊   我把“测试10”中的jsp文件内容改了删除了所有的struts2标签只输出一行文本测试结果如下图 天啊性能超出我的想像性能太好了达到了我的要求。看来一定是struts2标签拖了后腿。     测试12Struts2   官方提供的 示例程序 使用Struts2标签--s:form   426个请求/秒 为了让现象复现我把 “测试10”中 jsp又改了jsp中换用了其它的struts2标签 测试结果如下图 使用的标签是 Xml代码   s:form actionLogin       s:textfield keyusername/       s:password keypassword /       s:submit/   /s:form           结论 struts2框架性能很好 但struts2的标签性能太差了。 要避免使用 struts2标签。 Struts2 由于采用了 值栈、OGNL表达式、struts2标签库等会导致性能下降很严重的下降。如果避免或减少使用这些性能还是很好的。 Struts2的 多层拦截器、 多实例action性能都很好并不是 导致性能问题的原因。 注以上测试都没有数据库也没有复杂业务action和jsp中内容很简单目的就是测试MVC部分的性能。 --------------------------------------------------------------------------------------- 其它测试文章 http://zhaoshg.iteye.com/blog/356231 http://www.iteye.com/topic/679543 MVC框架性能比较 http://wenku.baidu.com/view/148d7e34eefdc8d376ee32ac.html spring3mvc与struts2比较 http://www.iteye.com/topic/646240 ---------------------------------------------------------------------------------------   附几种标签和框架组合解析数据时候的 性能测试对比 一、 数据 数据通过查询日志表得到数据共 1302 条数据将查询出的数据放入一个静态 List 中保证每次请求的数据相同。 测试页面的元素相同只是在取数据方式上不同。 二、 测试目标 1、 在 JSP 页面使用 struts2 标签的性能 2、 在 JSP 页面使用 JSTL 标签的性能 3、 在 Freemarker 页面使用 struts2 标签的性能 4、 在 Freemarker 页面使用 JSTL 标签的性能 5、 在 Freemarker 页面使用其本身的数据加载方式的性能。 三、 加载耗时对比 时间 ms           注每一次对比都是在同一时间段按同一顺序依次执行下列几种方式         struts2 JSTL C Freemarker-struts2 Freemarker-C Freemarker 第一次 306 58 1618   41 第二次 202 52 1643   39 第三次 211 58 2047   36 第四次 196 49 1621   28 第五次 218 52 1607   40 第六次 303 331 1857   45 第七次 210 50 1671   33 第八次 311 51 1699   47 第九次 462 55 2180   37 第十次 218 46 1721   42 平均值 263.7 80.2 1766.4   38.8 去掉最高和最低 223.75 53.125 1547.125   39.125      转账于http://elf8848.iteye.com   转载于:https://my.oschina.net/longload/blog/710526
http://www.zqtcl.cn/news/525494/

相关文章:

  • 南宁网站建设是什么深圳公司有哪些
  • 杭州手机申请网站登录怎么做电子商务网站
  • 青岛个人接网站建设wordpress 转载文章
  • 网上做网站任务网络营销传播的核心内容
  • 做黑界头像网站成考过来人的忠告
  • 宁波网站建设是哪家便宜织梦网站数据库备份文件夹
  • 在北京大学生做家教的网站淘宝网页
  • 英铭网站建设网站如何推广引流
  • 关于电子商务网站建设的现状企业公示信息查询系统山西
  • 网站开发 翻译长春建站企业
  • dedecms网站网站解析一般什么时候
  • 制作网站的技术北京律师24小时电话
  • 可拖拽 网站建设如何做自媒体和网站签约赚点击
  • 做网站选哪个语言怎么登录百度app
  • 国发网站建设网站优化主要优化哪些地方
  • 快速微信网站开发定制网站建设费用预算
  • 网站制作叫什么知名网站建设制作
  • 网络营销网站建设公司h5应用
  • 网站开发合同要上印花税吗南江红鱼洞水库建设管理局网站
  • 疏通下水道网站怎么做wordpress 恢复初始化
  • 电脑商业网站怎的做软文推广渠道
  • 自己做网站需要买什么如何做微信商城网站
  • 有了网站开发app是不是更容易自建网站管理
  • 网站将要准备建设的内容有哪些做外贸有效的网站
  • 网站设计博客网站内容添加
  • 网站建站行业新闻微盟开店怎么收费
  • 网站的建设参考文献郑州网站建设中国建设建设银行
  • 重庆那些公司的网站是网易做的电信100m光纤做网站
  • 网站怎么设计产品营销策略包括哪些内容
  • 天元建设集团有限公司破产重组河源seo排名