Windows 10 安装 Zend Server 和 Z-ray 观察Magento2 的性能

发布于2016-03-04

原本都是在windows下安装xampp来开发和测试magento1的模板和插件,但是我们似乎感到在xampp下来开发magento2几乎是不可能的任务,完全莫名其妙的卡死,后台加载图标转上几分钟没有任何反应,也许和Magento2 需要大量的文件读写有关,而windows的文件读写效率和Linux,Unix或者同样基于Unix内核的Mac相比真是慢得出奇,windows 下用winrar要解压Magneto2的文件到一个文件夹,即使是在SSD盘上操作也要3-4分钟,而在Ubuntu 或者Mac下基本是几秒的功夫,windows的确是个奇葩的系统,只是其超高的普及率,人们还真是离不开它。于是我们的开发平台已经转向Ubuntu,在Ubuntu下开发magetno2 效率要高许多。

言归正传,虽然奇葩的windows不适合Magento2的开发,但其超高普及率,软件众多,而且因为习惯,用起来更加顺手一下,今天我们不妨来试试windows 版的Zend Server 和 Z-Ray, Zend Server 和Z-Ray的组合使我们可以对Magento2(当然也可以分析Magento1, WordPress等)的性能瓶颈进行观察和分析。

1. 下载安装Zend Server

我们使用的是 windows 10 操作系统, 首先要去 Zend 官方网站下载 Zend Sever with Z-ray, 我们下载的是 php7 的版本,希望php7的性能提升对提高Magento2的运行速度有所帮助, Zend Server 并本身免费的,下载的版本有30天的有效期,如果是学生,可以向官方申请,也许可以得到一年免费的许可,

双击运行下载的的文件(ZendServer-TechPreview-php-7.0.2-Windows_x86.exe), 按照屏幕提示一步一步执行,在Setup Type屏幕,我们用的默认的 Typical 选项:

 

安装路径我们选的是 d:\zend, 按照屏幕提示安装完成后,会在默认的浏览器打开 Zend Server 启动界面:

 

按照屏幕提示进行, 在选择Zend Server Profile Options 我们选择 Development, 然后要求输入访问Zend Server 的密码,最后点击 Launch 按钮启动Zend Server,这个过程安装程序回去下载和更新一些部件,需要好几分钟,请耐心等待。

这之后就进入Zend Server的界面了:

 

点击左边菜单中的 Applications->Virtual Hosts, 我们可以看到系统默认的Virtual Host 的设置,我们可以选择添加新的Virtual Host, 也可以就用默认的,用默认的我们可以用localhost 或者机器的 IP地址访问网站。

2. 安装Mysql 数据库

首先下载 MySql community server , 我们下载的是 5.7.11 64bit 的zip格式。

下载后,把zip文件解压到 d:/zend/mysql 目录,mysql 5.7 版本并没有预先生成data 目录,所以要先做初始化,生成data目录和root用户,在命令提示符(管理员)下,先cd到 D:\zend\mysql 目录,然后键入下面命令:

然后启动mysql 服务:

命令提示符出现 “Version: ‘5.7.11’ socket: ” port: 3306 MySQL Community Server (GPL)”, 说明MySql 服务已经启动,不要关闭这个命令提示符,如果要停止mysql服务,用下面命令:

重新打开新的命令提示符,键入:

敲2次回车,就可以进入MySql命令行界面,然后在MySql命令行提示符下为mysql的root用户添加密码:

然后创建数据库magento2,用于后面安装Magento2.

 

3. 安装Magento2的Z-Ray 插件

在浏览器的Zend Server 界面左边菜单中选 Plugins-> Gallery , 默认Magento1的 Z-Ray插件已经安装,但Magento2的Z-ray插件我们要手动安装,在插件库里找到 Magento2 创建,点击安装即可:

 

点击安装后,按照屏幕提示一步步过就行。

4. 安装Magento2

在安装Magento2,之前,我们需要修改一下php的一些参数,我们在文档根目录下建一个文件,运行phpinfo() 命令,在浏览器中我们可以找到正确的php.ini 文件:

 

然后编辑这个文件,并修改下面参数:

这几个参数多于是否可以成功安装Magento2是至关重要的,比如第一项最大执行时间,默认只有30秒,如果Magento2的安装某个部件是用时超过30s,就会出错。

修改好后存盘,然后用Zend Server 本身提高的 Apache2 检测工具重启apache2,如下图:

 

如果这时有关于Sever的告警信息,点击查看,提示刚才修改的值没有生效,要在Action处点击图标,完成操作,告警会消失:

 

现在最好重启一下Apache, 以及Zend Server和MySql。

其实也可以直接在Zend Server图形界面中修改所有PHP的设置,从Zend Server 界面左侧菜单选 PHP-> Extensions, 然后在右侧搜索框中搜索需要修改的PHP 设置, 就可以找到要修改的参数:修改完成后,不要忘记点击Save 按钮,最后重启一下Zend Server

 

 

点击Zend Server 左侧菜单的 Applicaitons -> Virtual Hosts, 然后在右侧界面点击我们唯一的 Virtual Host,就可以看到默认Virtual Host的细节:

 

可以看到端口,文档根目录等信息,我们就把Magento2的安装文件放在 D:\zend\Apache24\htdocs\magento2 里面,然后在浏览器用 http://youpc-IP-address/magento2 (比如http://192.168.2.105/magento2) 来安装Magento2, 我们没有用localhost 或者 127.0.0.1 来安装Magento2,用本机的IP地址安装有个好处就是用同在局域网的手机或者平板也可以访问 http://youpc-IP-address/magento2,这样就可以直接测试网站在移动设备上的表现。

Magento2 的安装过程可以参考本站的安装教程。这里就不多说了。

安装完成后,在浏览器下方有Zend Server 的工具条,里面有Magento2 Z-ray 插件按钮,点击就可以对Magento2的各个方面的性能进行观察分析:

 

如果url rewrite 无效,需要修改 Apache2/conf/httpd.conf, 找到我们用的 Virtual Hosting 段,然后把AllowOverride No 改成 AllowOverride All, 最后重启一下 apache 服务:

 

当然,因为默认就安装了Magento1的 Z-ray插件,我们也可以观察分析Magento1的性能:

 

只要安装了相关的Z-ray插件,也可以用于 Drupal, WordPress, Joomla 等等。