zoukankan      html  css  js  c++  java
  • LAMP架构性能测试+php优化

     性能测试:
    1. 首先查看一下服务器的硬件性能
    free  -m  ----》查看一下内存的情况
    lscpu或者cat  /proc/cpuinfo     ------à查看一下cpu的情况
    2. 测试一下硬盘的性能
    hdparm   -t    /dev/sda
    3. ping一下,主要为了检测网络的延时,看time=  ms(注意不要通过无线网去测网络,最好是直连)
    4. wget  http://     下载一个文件试下,主要为了检测一下带宽可以达到多高。
    5. 利用ab命令(Apache附带的一个测试工具,全称叫做Apache benchmark)对网站进行压力测试。
    ab  -c 10 –n 1000  http://10.1.1.1/index.php
     
    -c参数是指定并发量,就是我一次对这个网站发起多少个连接。
    -n 测试的次数,比如说我们用10的并发量向服务器去请求1000次的HTTP请求,相当于我们访问了1000次指定的网页。
     

    LAMP优化:
    优化步骤:
    1. 找到性能的瓶颈点,通常问题不是出现在Apache上面,而是在php的解析上面,所以php的优化是lamp优化里面的关键一环。因为php不像Java,.net,c,c++这些语言它在运行前都需要提前编译好,而php是一个脚本语言,每次运行的时候都需要进行编译。
    2. 理解php的执行流程对于LAMP架构的优化至关重要,如下:
    用户通过浏览器-----Apache--mod_php--编译php代码----执行并返回----返回给Apache
    在没有进行任何优化的情况下,用户每次去访问个php的动态页面都要编译一次,把大多数的时间都花在编译上面了,而不是执行并返回这个步骤上面。所以我们要利用php加速器。
    3. php加速器的原理:
    用户通过浏览器-----Apache--mod_php--编译并缓存php代码----执行并返回----返回给Apache
    也是这样一个步骤,只是在编译php代码这个部分让它只编译一次,并且缓存下来,这样就可以做到不管多少次请求,10次,100次,1000次我就不需要重复去编译,从而大大节省大量性能和时间,以提高php解析的速度。
    4. 常用的php加速器
    APC(Alternative PHP Cache)
    eAccelerator
    xCache
    综合性能(速度和内存使用率)比较好的是eAccelerator
      具体步骤:
    1. yum groupinstall –y “Development Tools”
    2. 去pkgs.org网站下载php-devel的包
    3. 去eAccelerator.net下载eAccelerator软件包
    4. 解压,切换进eaccelerator-master目录里,在编译之前要运行phpize这个命令,然后再编译,make,make install.
    然后具体配置,我们先在/etc/php.d/目录下新建一个eaccelerator.ini的配置文件,通过php的扩展,详见:
    https://github.com/eaccelerator/eaccelerator
    做完了如何验证使用了eaccelerator加速器呢?
    浏览器输入http://ip/phpinfo.php查看
    5.Apache服务器的优化
    prefork模式组的参数
    6.修改php.ini里面的选项:
    upload_max_filesize,post_max_size(设置允许上传的文件的大小)
    memory_limit(设置一个php脚本最多能够占用的内存)
     
     
    7.修改eaccelerator.ini配置文件:
    eaccelerator.shm_size(设置eaccelerator的共享内存的大小,可以调大一些)
     
      
  • 相关阅读:
    Django环境配置
    python pip使用报错: Fatal error in launcher: Unable to create process using '"c:python27python.exe" "C:Python27Scriptspip.exe" '
    我的第100篇博客
    测试代码(测试函数)
    python 存储数据
    python 异常之进阶操作
    从实战的角度谈微服务(三):基于Feign的熔断
    从实战的角度谈微服务(三):基于Feign服务间的调用
    从实战的角度谈微服务(二):服务注册与发现(Eureka服务端)
    从实战的角度谈微服务(一):初识微服务
  • 原文地址:https://www.cnblogs.com/steven9898/p/11309502.html
Copyright © 2011-2022 走看看