PHP和Python/Ruby运行机制的本质区别
[ 2010-04-18 21:19:55 | 作者: admin ]
http://www.javaeye.com/topic/319039?page=4#853931
PHP和Python/Ruby的运行机制有一个本质区别:PHP是每次HTTP请求过来以后,初始化全部资源(例如创建数据库链接、加载系统类库,创建缓存等等),处理完毕,释放全部资源,这不像Python/Ruby之类带有GC的脚本语言,Python/Ruby是初次启动的时候初始化资源,随后的请求就不必再次初始化资源了。
这种机制的差异带来的区别就是:
1、PHP极难出现严重的内存泄露问题,随便你代码写的多烂,反正每个请求一执行完毕,所有资源统统释放光。而Python/Ruby则需要依赖GC来回收内存,因此稍有不慎,还是会出现GC无法释放的内存泄露问题。
2、PHP每次请求都要初始化资源,这个开销非常大。所以尽管PHP解析器本身的运行速度是极快的,但是一旦使用复杂的PHP框架,那么由...
阅读全文…
PHP和Python/Ruby的运行机制有一个本质区别:PHP是每次HTTP请求过来以后,初始化全部资源(例如创建数据库链接、加载系统类库,创建缓存等等),处理完毕,释放全部资源,这不像Python/Ruby之类带有GC的脚本语言,Python/Ruby是初次启动的时候初始化资源,随后的请求就不必再次初始化资源了。
这种机制的差异带来的区别就是:
1、PHP极难出现严重的内存泄露问题,随便你代码写的多烂,反正每个请求一执行完毕,所有资源统统释放光。而Python/Ruby则需要依赖GC来回收内存,因此稍有不慎,还是会出现GC无法释放的内存泄露问题。
2、PHP每次请求都要初始化资源,这个开销非常大。所以尽管PHP解析器本身的运行速度是极快的,但是一旦使用复杂的PHP框架,那么由...
阅读全文…
最新的新浪PHP面试题(2009.3)
[ 2010-04-18 20:51:43 | 作者: admin ]
1. echo count("abc"); 输出什么?
2. 用PHP写出显示客户端IP与服务器IP的代码
3. error_reporting(2047)什么作用?
4. echo,print()和print_r()有什么区别?
5. 打开php.ini中的Safe_mode,会影响哪些参数?至少说出6个。
6. 写个函数来解决多线程同时读写一个文件的问题。
7. 请写一个函数验证电子邮件的格式是否正确(要求使用正则)
8. 考SQL语句的题,题太长了,实在不好回忆了。
9. MySQL数据库,一天一万条以上的增量,怎么优化?
10. 写出一种排序算法(要写出代码),并说出优化它的方法。
11. 写个函数用来对二维数组排序。
12. 写5个不同的自己的函数,来截取一个全路径的文件的扩展名,允许封装php库中已有的函数。
13. 一群猴子排成一圈,按1,2,...,...
阅读全文…
2. 用PHP写出显示客户端IP与服务器IP的代码
3. error_reporting(2047)什么作用?
4. echo,print()和print_r()有什么区别?
5. 打开php.ini中的Safe_mode,会影响哪些参数?至少说出6个。
6. 写个函数来解决多线程同时读写一个文件的问题。
7. 请写一个函数验证电子邮件的格式是否正确(要求使用正则)
8. 考SQL语句的题,题太长了,实在不好回忆了。
9. MySQL数据库,一天一万条以上的增量,怎么优化?
10. 写出一种排序算法(要写出代码),并说出优化它的方法。
11. 写个函数用来对二维数组排序。
12. 写5个不同的自己的函数,来截取一个全路径的文件的扩展名,允许封装php库中已有的函数。
13. 一群猴子排成一圈,按1,2,...,...
阅读全文…
1