zoukankan      html  css  js  c++  java
  • PHPNG (next generation)

    PHPNG (next generation)

    This page gives short information about development state of a new PHP branch based on refactored Zend Engine.

    The phpng branch has been merged into master and has been used as the base for PHP 7.0

    Some technical implementation details are available at phpng-int. Information for extension maintainers at phpng-upgrading.

    Slides from a talk at ZendCon-2014 phpng-php7.pdf

    How to Download, Build, Install and Test

    Note: For anonymous checkout, use https://git.php.net/repository/php-src.git instead of git@git.php.net:php-src.git

    mkdir ~/tmp
    cd ~/tmp
    git clone git@git.php.net:php-src.git
    cd php-src
    ./buildconf
    ./configure 
        --prefix=$HOME/tmp/usr 
        --with-config-file-path=$HOME/tmp/usr/etc 
        --enable-mbstring 
        --enable-zip 
        --enable-bcmath 
        --enable-pcntl 
        --enable-ftp 
        --enable-exif 
        --enable-calendar 
        --enable-sysvmsg 
        --enable-sysvsem 
        --enable-sysvshm 
        --enable-wddx 
        --with-curl 
        --with-mcrypt 
        --with-iconv 
        --with-gmp 
        --with-pspell 
        --with-gd 
        --with-jpeg-dir=/usr 
        --with-png-dir=/usr 
        --with-zlib-dir=/usr 
        --with-xpm-dir=/usr 
        --with-freetype-dir=/usr 
        --with-t1lib=/usr 
        --enable-gd-native-ttf 
        --enable-gd-jis-conv 
        --with-openssl 
        --with-mysql=/usr 
        --with-pdo-mysql=/usr 
        --with-gettext=/usr 
        --with-zlib=/usr 
        --with-bz2=/usr 
        --with-recode=/usr 
        --with-mysqli=/usr/bin/mysql_config
    make
    make install
    mkdir $HOME/tmp/usr/etc
    vi $HOME/tmp/usr/etc/php.ini
    max_execution_time=600
    memory_limit=128M
    error_reporting=0
    display_errors=0
    log_errors=0
    user_ini.filename=
    realpath_cache_size=2M
    cgi.check_shebang_line=0
    
    zend_extension=opcache.so
    opcache.enable_cli=1
    opcache.save_comments=0
    opcache.fast_shutdown=1
    opcache.validate_timestamps=1
    opcache.revalidate_freq=60
    opcache.use_cwd=1
    opcache.max_accelerated_files=100000
    opcache.max_wasted_percentage=5
    opcache.memory_consumption=128
    opcache.consistency_checks=0

    Now PHP must be installed and configured. The final check.

    $ sapi/cli/php -v
    PHP 7.0.0-dev (cli) (built: Apr 28 2014 11:13:04) 
    Copyright (c) 1997-2014 The PHP Group
    Zend Engine v2.7.0-dev, Copyright (c) 1998-2014 Zend Technologies
        with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies

    You may run synthetic benchmarks

    $ sapi/cli/php Zend/bench.php
    $ sapi/cli/php Zend/micro_bench.php

    You may measure the performance of some web applications

    $ sapi/cgi/php-cgi -T 1000 /var/www/html/wordpress/index.php > /dev/null''

    You may do the same with callgrind profiler

    $ valgrind --tool=callgrind --dump-instr=yes --separate-recs=1 sapi/cgi/php-cgi -T 100 /var/www/html/wordpress/index.php > /dev/null

    Finally, you may run PHP as FastCGI server using CGI SAPI or FPM (it requires additional configuration)

    $ PHP_FCGI_CHILDREN=4 PHP_FCGI_MAX_REQUESTS=0 sapi/cgi/php-cgi -b /tmp/fcgi-php

    I would recommend build PHP from master and phpng branches and compare their performance

  • 相关阅读:
    IntelliJ IDEA java项目导入jar包,打jar包
    intelliJ idea运行新的test功能时,报错:class not found "....." empty test suite
    WEBSERVICE之JDK开发webservice
    Linux uname 命令 打印系统信息
    IDEA中 @override报错的解决方法
    使用VMware搭建3台一模一样的Linux虚拟机
    java使用httpclient封装post请求和get的请求
    在Centos中yum安装和卸载软件的使用方法
    JAVA面试题:69道Spring面试题和答案
    JAVA面试题:equals()方法和== 区别
  • 原文地址:https://www.cnblogs.com/archoncap/p/4545128.html
Copyright © 2011-2022 走看看