工具 http_load

测试url:
http://api.test.chaoma.me/agent/ad/good_goods/query
http://api.test.chaoma.me/agent/common/area/query
http://api.test.chaoma.me/agent/index/getScreenList 测试方法:http_load -rate 100 -seconds 10 简单的一步一步增大rate参数直到fetches无法跟上请求数

左侧为未开启opcache  右侧为开启opcache

N :     无 phar

GPS: phar gz压缩 include phar里的入口文件

GPA: phar gz压缩 include 整个phar包

PS:      phar 未gz压缩 include phar里的入口文件

PA:      phar 未gz压缩 include整个phar包

未opcahe 未进行phar打包

 fetches,  max parallel, 1.29985e+06 bytes, in  seconds
1509.69 mean bytes/connection
86.0999 fetches/sec, bytes/sec
msecs/connect: 0.121065 mean, 0.253 max, 0.059 min
msecs/first-response: 268.232 mean, 537.221 max, 20.177 min
HTTP response codes:
code --
未opcache GZ压缩 phar 引入单独入口文件 857k

550 fetches, 283 max parallel, 834656 bytes, in 10 seconds
1517.56 mean bytes/connection
54.9998 fetches/sec, 83465.4 bytes/sec
msecs/connect: 0.141062 mean, 0.412 max, 0.06 min
msecs/first-response: 1430.25 mean, 4242.23 max, 30.521 min
HTTP response codes:
code 200 -- 550
未opcache GZ压缩 引入全部phar

552 fetches, 282 max parallel, 824349 bytes, in 10 seconds
1493.39 mean bytes/connection
55.1999 fetches/sec, 82434.8 bytes/sec
msecs/connect: 0.141429 mean, 0.293 max, 0.08 min
msecs/first-response: 1399.32 mean, 3991.58 max, 30.834 min
HTTP response codes:
code 200 -- 552
未opcache  未GZ压缩 phar整体引入GZ 2.6M

536 fetches, 297 max parallel, 790063 bytes, in 10.0001 seconds
1474 mean bytes/connection
53.5997 fetches/sec, 79005.8 bytes/sec
msecs/connect: 0.140284 mean, 0.277 max, 0.058 min
msecs/first-response: 1585.57 mean, 3539.12 max, 139.093 min
HTTP response codes:
code 200 -- 536
未opcache 未GZ phar单独引入

530 fetches, 305 max parallel, 800659 bytes, in 10.0001 seconds
1510.68 mean bytes/connection
52.9997 fetches/sec, 80065.4 bytes/sec
msecs/connect: 0.147008 mean, 0.821 max, 0.078 min
msecs/first-response: 1737.13 mean, 5451.6 max, 43.804 min
HTTP response codes:
code 200 -- 530
opcache 未进行phar打包

 fetches,  max parallel, 4.92848e+06 bytes, in  seconds
1479.58 mean bytes/connection
333.1 fetches/sec, bytes/sec
msecs/connect: 0.0978778 mean, 0.354 max, 0.05 min
msecs/first-response: 24.289 mean, 297.547 max, 2.476 min
HTTP response codes:
code --
opcache GZ压缩  单独引入phar入口文件

 fetches,  max parallel, 3.25115e+06 bytes, in 10.0001 seconds
1483.86 mean bytes/connection
219.099 fetches/sec, bytes/sec
msecs/connect: 0.14185 mean, 0.46 max, 0.06 min
msecs/first-response: 554.939 mean, 3799.93 max, 13.301 min
HTTP response codes:
code --
opcahe GZ压缩 整体引入phar包 857k

 fetches,  max parallel, 2.92806e+06 bytes, in 10.0001 seconds
1444.53 mean bytes/connection
202.698 fetches/sec, bytes/sec
msecs/connect: 0.168372 mean, 0.611 max, 0.063 min
msecs/first-response: 678.903 mean, 3901.45 max, 12.343 min
HTTP response codes:
code --
opcache 未GZ压缩 单独引入入口文件 大小2.6M

 fetches,  max parallel, 1.71245e+06 bytes, in  seconds
1500.83 mean bytes/connection
114.1 fetches/sec, bytes/sec
msecs/connect: 0.165937 mean, 0.41 max, 0.081 min
msecs/first-response: 1210.33 mean, 5786.45 max, 21.29 min
HTTP response codes:
code --
opcache 未GZ压缩 整体引入phar

 fetches,  max parallel, 1.65455e+06 bytes, in 10.0001 seconds
1517.93 mean bytes/connection
108.999 fetches/sec, bytes/sec
msecs/connect: 0.168871 mean, 0.541 max, 0.067 min
msecs/first-response: 1253.12 mean, 5429.15 max, 25.819 min
HTTP response codes:
code --

每秒处理量降低

without opcache: (8.5-5.5)/8.5 = 35%

opcache:     (3300-2200)/3300 = 33%

phar打包项目压力对比测试的更多相关文章

  1. PHP的学习--使用phar打包

    前段时间写了几个PHP的脚本,但是因为脚本的项目是基于composer安装的,给别人使用的时候不太方便,就希望能够打包成一个能直接使用的文件. 搜索了一下,发现可以使用phar打包. 假设我们有如下一 ...

  2. cocos2d-x 2.1.4 使用create_project.py脚本创建项目+ant打包项目

    1.创建项目:执行create_project.py脚本,进入Doc界面输入下面的命令: cd D:\cocos2d-x-2.1.4\cocos2d-x-2.1.4\tools\project-cre ...

  3. 0基础手把手教你搭建webpack运行打包项目(未完待续)

    这些天在项目之余的时间学习了webpack打包项目的东西,非常荣幸的找到一些大神的文章来学习,死劲嚼了几天,终于略知一二.在以后的工作上还需继续学习,下面我将分享我这几天学到的一点东西,希望能让我一个 ...

  4. Webpack 2 视频教程 017 - Webpack 2 中分离打包项目代码与组件代码

    原文发表于我的技术博客 这是我免费发布的高质量超清「Webpack 2 视频教程」. Webpack 作为目前前端开发必备的框架,Webpack 发布了 2.0 版本,此视频就是基于 2.0 的版本讲 ...

  5. 基于Vue + webpack + Vue-cli 实现分环境打包项目

    需求由来:我公司项目上线发布至服务器分为三个环境分别为测试环境.预发布环境.生产环境:前期做法是项目通过脚步打包时由脚步把域名和后缀名之类的全部替换成要发布的环境所需要的,因为我公司的项目比较大由许许 ...

  6. VS打包项目详细解析

       使用VS打包项目,其实很多简单.微软官方文档很详尽,故不再细述,只列出相关链接 1创建安装项目 如何:创建或添加部署项目 2 添加项目输出 如何:向部署项目中添加项 3添加用户界面 部署中的用户 ...

  7. 如何使用webpack打包项目

    webpack是前端开发中比较常用的打包工具之一,另外还有gulp,grunt.之前没有涉及过打包这块,这里介绍一下使用webpack打包的流程. Grunt和Gulp的工作方式是:在一个配置文件中, ...

  8. 【vue】饿了么项目-使用webpack打包项目

    1.vue cli给我们提供了npm run build命令打包项目,在packa.json文件中scripts对象中有build属性,当我们执行npm run build时,就执行build对应的& ...

  9. 使用maven打包项目遇到错误: http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

    今天在使用maven打包项目时遇到一个错误: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin ...

随机推荐

  1. 创建Maven项目步骤

    (转自:http://blog.csdn.net/chuyuqing/article/details/28879477) 使用eclipse插件创建一个web project 首先创建一个Maven的 ...

  2. 利用oracle session context 向oracle传值

    有时候,我们在执行数据库请求时,需要向数据库传一些应用程序的上下文信息,比如当前应用的用户.举个场景,我们要通过触发器记录对某些关键表的修改日志,日志包括修改的表,字段,字段的值,修改的时间,当然非常 ...

  3. 【Java面试题系列】:Java基础知识常见面试题汇总 第二篇

    文中面试题从茫茫网海中精心筛选,如有错误,欢迎指正! 第一篇链接:[Java面试题系列]:Java基础知识常见面试题汇总 第一篇 1.JDK,JRE,JVM三者之间的联系和区别 你是否考虑过我们写的x ...

  4. php 生成图片,只获取字节数据,不以图片格式输出

    提示:与直接将结果输出到浏览器的任何内容一样,可以使用输出控制函数(http://www.php.net/./en/ref.outcontrol.php)捕获此函数的输出,并将其保存在字符串(例如)中 ...

  5. 《深入理解Java虚拟机》笔记01 -- 运行时数据区

    运行时数据区示意图 1. 程序计数器 占用一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器.主要用来记录线程执行到哪条语句了,分支.循环.跳转.异常处理.线程恢复等功能都需要依赖这个 ...

  6. poj 2407 欧拉函数裸题

    http://poj.org/problem?id=2407 题意:多组数据,每次输入一个数 ,求这个数的欧拉函数 int euler_phi(int n){//单个欧拉函数 int m=(int)s ...

  7. Mac PyCharm2018破解

    1.下载破解补丁 https://link.jianshu.com/?t=http%3A%2F%2Fidea.lanyus.com%2Fjar%2FJetbrainsCrack-2.7-release ...

  8. git push error: ! [rejected] failed to push some refs to . . .

    报错情况: 报错原因:远程库与本地库不一致造成的,需要把远程库同步到本地库! 解决办法: git pull --rebase origin master 这条指令是将远程库中的更新合并到本地库,--r ...

  9. Jmeter4.0----设置集合点_并发(11)

    1.说明 LR中集合点可以设置多个虚拟用户等待到一个点,同时触发一个事务,以达到模拟真实环境下多个用户同时操作,实现性能测试的最终目的. jmeter中使用Synchronizing Timer实现L ...

  10. selenum autoit上传图片

    目前,一般实现文件图片上传的方式都是有一个按钮,点击之后直接调用操作系统自身的弹框,选择文件后,实现上传.因为Selenium不支持调用操作系统的操作,所以这种情况下,利用Selenium无法完成图片 ...