1 
                    
                    iyaozhen      2017-07-14 00:05:26 +08:00 via Android 
                    
                    额,减小体积有什么用吗? 
                 | 
            
     2 
                    
                    a282810      2017-07-14 00:09:33 +08:00 
                    
                    额,减少了文件体积能提升多少性能?节省多少内存? 
                 | 
            
     3 
                    
                    choury      2017-07-14 00:12:47 +08:00 
                    
                    磁盘装不下了吗? 
                 | 
            
     4 
                    
                    xaxb   OP PHP7.1.7,计算 10000 个素数,原来是 3.5 秒,瘦身后<3.1 秒,内存占用上有少量增加.网上说 rpm 打包前都要用 strip 把符号表删掉的,我试了下 yum 安装的程序和 scl 库里的 rh-mariadb101-mariadb,果然都没有符号表等信息。跟着大方向走,应该没错的。 
                 | 
            
     6 
                    
                    kn007      2017-07-14 10:13:31 +08:00 via Android 
                    
                    关注一下 
                 | 
            
     7 
                    
                    kn007      2017-07-14 11:15:03 +08:00 via Android 
                    
                    @sunweiqiang8 想问下,具体怎么操作呢?怎么去编译和瘦身,谢谢。 
                 | 
            
     8 
                    
                    studentht      2017-07-14 13:45:51 +08:00 
                    
                    @sunweiqiang8 可以加上--disable-cgi 
                 | 
            
     9 
                    
                    studentht      2017-07-14 13:50:39 +08:00 
                    
                    @sunweiqiang8  比较好奇,你怎么知道可以加`--disable-debug --disable-phpdbg`,php70 的 configure 帮助给出来的只有下面的选项 
                ` --enable-phpdbg Build phpdbg --enable-phpdbg-webhelper Build phpdbg web SAPI support --enable-phpdbg-debug Build phpdbg in debug mode --enable-debug Compile with debugging symbols `  | 
            
     10 
                    
                    xaxb   OP  | 
            
     11 
                    
                    xaxb   OP @studentht  
                --disable-cgi 选项在用,加上后不会编译生成 php-cgi --disable-debug --disable-phpdbg 最初网上看的,一直在用,PHP7 开始可能此选项已经默认开启了。  | 
            
     12 
                    
                    kn007      2017-07-14 17:09:53 +08:00 via Android 
                    
                    @sunweiqiang8 了解了,谢谢 
                 | 
            
     13 
                    
                    jhdxr      2017-07-14 23:33:42 +08:00 
                    
                    @studentht 有 enable 的就有对应的 disable,有 with 的就有对应的 without,反过来也一样。但是,如果--help 列出来的是 enable,代表默认就是 disabled,那么你再去加一个--disable 的参数其实并不会造成什么不同。。。 
                 | 
            
     14 
                    
                    kn007      2017-07-14 23:45:57 +08:00 
                    
                    我测试了下,strip 后体积是小了( 41MB vs 8.8MB ),但性能没提升。 
                求 10000 个素数,未 strip 和 strip 后,平均都是 0.00365。测试 100 次。 鸟哥的 bench、micro_bench、mandelbrot,测试后,结果也相差不多。  | 
            
     15 
                    
                    xaxb   OP @jhdxr 对 PHP5 是有用的,线上环境很多需要编译 PHP5 老版本,安装脚本为了保持对 PHP5 的兼容性保留了这两个参数 
                 | 
            
     16 
                    
                    xaxb   OP @kn007  
                你的好快啊,确定是 10000 个素数,不是 10000 以内的素数? 15 款顶配的 MBP,虚拟的 CentOS7, PHP7.1.7,刚跑了会,平均 2.85 秒( laravel 控制器中运行)。 这是我的测试代码,难以理解的是写在 Laravel 的控制器中反而比单个文件快。 <?php header("Content-type: text/plain"); $start = microtime(true); $count = 0; $prime = function($num) { $t = ceil($num / 3); for ($i = 2; $i <= $t; $i++) { if ($num % $i == 0) { return false; } } return true; }; for ($num = 2 ; $count < 10000; $num++) { if ($prime($num)) { $count++; } } $time = number_format(microtime(true) - $start, 5); echo "time:$time\n";  | 
            
     17 
                    
                    kn007      2017-07-15 07:36:12 +08:00 
                    
                    @sunweiqiang8 哈,线上版本早已更新。 
                看来是我用错测试代码。最新的结果是 strip 前:平均 2.981 strip 后:平均 2.993 直接 shell php 的运行结果。速度反而慢了,strip 后。。囧 话说是不是用 Laravel,会 opcode cache,所以快了? 15 款顶配的 MBP,有米。。  |