Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 当服务器代码为';什么在生产中?_Php_Python_Ruby_Perl_Node.js - Fatal编程技术网

Php 当服务器代码为';什么在生产中?

Php 当服务器代码为';什么在生产中?,php,python,ruby,perl,node.js,Php,Python,Ruby,Perl,Node.js,当涉及到前端代码时,您总是在生产中缩小它(删除空白、注释等) 应该对服务器代码执行同样的操作吗?我的服务器文件中通常有很多注释。但我从未听说过有人这样做 如果以同样的方式对代码进行优化,服务器不会运行得更快吗?当服务器端代码被转换为机器代码(或解释)时,空白和所有格式都会丢失,因此不会有任何改进。它也不是通过线路发送的,它是从本地文件系统读取的,因此虽然字符数较少会导致更快的启动,但从长远来看,它不会产生任何影响,而且启动速度的提高是微乎其微的(甚至是不明显的) 因此,不,缩小服务器端代码基本上

当涉及到前端代码时,您总是在生产中缩小它(删除空白、注释等)

应该对服务器代码执行同样的操作吗?我的服务器文件中通常有很多注释。但我从未听说过有人这样做


如果以同样的方式对代码进行优化,服务器不会运行得更快吗?

当服务器端代码被转换为机器代码(或解释)时,空白和所有格式都会丢失,因此不会有任何改进。它也不是通过线路发送的,它是从本地文件系统读取的,因此虽然字符数较少会导致更快的启动,但从长远来看,它不会产生任何影响,而且启动速度的提高是微乎其微的(甚至是不明显的)


因此,不,缩小服务器端代码基本上是无用的,更糟糕的是,它可能会使堆栈跟踪完全无用,因为同一行中有很多代码(不一定使用相同的格式).

我认为缩小与减少线路上的字节有关,而不是与提高运行效率有关。

我不认为这对服务器端代码有任何好处,因为服务器对代码进行评估,实际上不会发送代码。如果您希望优化生产代码,可以考虑设置编译器缓存,如APC for PHP,缩小的目的是:(1)最大限度地减少通过网络传输的字节数;和(2)加速解析(通过浏览器)

服务器端的小型化等效于字节码编译。Python中有(
.pyc
.pyo
)文件,PHP和Perl中有


在服务器大小上,没有“通过网络传输”,只需从磁盘读取(源)文件,因此在这方面的性能差异要小得多;主要的性能提升来自于加快解析速度。

您可以缩小代码并保持函数名不变,从而保留堆栈跟踪。缩小操作不涉及函数名,它涉及空格和换行符,这将阻止您找到真正的罪魁祸首,因为没有要计数的新行。Node.js不需要APC,因为node.js没有像PHP那样的共享架构。我的答案是指像PHP而不是js这样的服务器端代码。当然javascript不会从PHP编译器缓存中受益。但是像node.js这样的服务器端javascript也不能从APC=>字节码缓存中受益……你可能总是缩小,但其他人可能不同意。编译时只需半纳秒,就再也不会了,对吗?我不知道。测量它,然后回来告诉我们。在连接之前和连接比较之后,我需要一个编译器级别的分解。这周我太忙了,无法破解Node.js的源代码。我下个月再看。我在挖苦人。我真的不在乎。这个问题已经讨论了将近四年了。