海运的博客

PHP静态调用非静态方法性能

发布时间:December 30, 2013 // 分类:PHP // No Comments

============Which method========================Time======
Inline calculation                             0.0805 s
Normal function call                           0.3438 s
Normal method called through object            0.4118 s
Static method called statically                0.4280 s
Unspecified method called through object()     0.4294 s
Unspecified method called statically()         0.6960 s

来源:http://bbs.csdn.net/topics/350118147

此内容被密码保护

发布时间:December 29, 2013 // 分类:常用软件 // 2 Comments

请输入密码访问

PHP正则验证邮箱及域名MX

发布时间:December 27, 2013 // 分类:PHP // No Comments

<?php
   function validate_email($email){

      $exp = "^[a-z\'0-9]+([._-][a-z\'0-9]+)*@([a-z0-9]+([._-][a-z0-9]+))+$";

      if(eregi($exp,$email)){

         if(checkdnsrr(array_pop(explode("@",$email)),"MX")){
            return true;
         }else{
            return false;
         }

      }else{

         return false;

      }   
   }

   echo validate_email('qq@qq.com');
?>

PHP5.5编译参数

发布时间:December 27, 2013 // 分类:PHP // No Comments

yum install gcc autoconf libxml2-devel openssl-devel curl-devel libmcrypt-devel
./configure --prefix=/usr/local/php \
--with-config-file-path=/etc/php \
--enable-fpm \
--enable-pcntl \
--enable-mysqlnd \
--enable-opcache \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem  \
--enable-sysvshm \
--enable-shmop \
--enable-zip \
--enable-ftp \
--enable-soap \
--enable-xml \
--enable-mbstring \
--disable-rpath \
--disable-debug \
--disable-fileinfo \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-pcre-regex \
--with-iconv \
--with-zlib \
--with-mcrypt \
--with-gd \
--with-openssl \
--with-mhash \
--with-xmlrpc \
--with-curl \
--with-imap-ssl
make
make install

JIT编译器HHVM提升PHP性能

发布时间:December 26, 2013 // 分类:HHVM // No Comments

Debian7下安装:

echo 'deb http://dl.hhvm.com/debian wheezy main' >> /etc/apt/sources.list.d/hhvm.list
apt-get update
apt-get install hhvm

运行于Server模式:

Server {
  Port = 80
  ExposeHPHP = false
  SourceRoot = /var/www
}

Eval {
  Jit = true
  JitWarmupRequests=0
}

Log {
  Level = Error
  UseLogFile = true
  File = /var/log/hhvm/error.log
  Access {
    * {
      File = /var/log/hhvm/access.log
      Format = %h %l %u %t \"%r\" %>s %b
    }
  }
}

VirtualHost {
  * {
    Pattern = .*
    RewriteRules {
      dirindex {
        pattern = ^/(.*)/$
        to = $1/index.php
        qsa = true
      }
    }
  }
}

StaticFile {
  FilesMatch {
    * {
      pattern = .*\.(dll|exe)
      headers {
        * = Content-Disposition: attachment
      }
    }
  }
  Extensions {
    css = text/css
    gif = image/gif
    html = text/html
    jpe = image/jpeg
    jpeg = image/jpeg
    jpg = image/jpeg
    png = image/png
    tif = image/tiff
    tiff = image/tiff
    txt = text/plain
  }
}

运行于Fastcgi模式:

Server {
  Port = 9000
  Type=fastcgi
  ExposeHPHP = false
}

Eval {
  Jit = true
  JitWarmupRequests=0
}

Log {
  Level = Error
  UseLogFile = true
  File = /var/log/hhvm/error.log
  Access {
    * {
      File = /var/log/hhvm/access.log
      Format = %h %l %u %t \"%r\" %>s %b
    }
  }
}

启动HHVM:

hhvm -m daemon --config server.hdf

默认请求超过11次才启动JIT模式,修改为立即启动为JIT模式。

  JitWarmupRequests=0

CLI:

hhvm -v "Eval.Jit=true" f.php

集成的扩展:https://github.com/facebook/hhvm/wiki/Extensions
性能提升多少?看测试脚本:https://github.com/ckwalsh/php_hhvm_bench

分类
最新文章
最近回复
  • opnfense: 谢谢博主!!!解决问题了!!!我之前一直以为内置的odhcp6就是唯一管理ipv6的方式
  • liyk: 这个方法获取的IPv6大概20分钟之后就会失效,默认路由先消失,然后Global IPV6再消失
  • 海运: 不好意思,没有。
  • zongboa: 您好,請問一下有immortalwrt設定guest Wi-Fi的GUI教學嗎?感謝您。
  • 海运: 恩山有很多。
  • swsend: 大佬可以分享一下固件吗,谢谢。
  • Jimmy: 方法一 nghtp3步骤需要改成如下才能编译成功: git clone https://git...
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...
归档