其实一直想写这个系列, 但是一想到这个话题的宽泛性, 我就有点感觉无法组织.
今天我也不打算全部讲如何调试一个PHP的Core文件, 也不会介绍什么是Coredump, 选择一个相对比较简单的方向来介绍, 那就是如何从PHP的Core文件中获取一些对我们重演这个Core有帮助的信息.
241 search results for "php"
上周的时候, 搞mysql proxy, 发现要用lua写服务器脚本, 加之以前配置lighttpd的时候, 配置也可以用lua来写, 就想彻底学习和研究下lua.
本着学习Lua的态度, 写了一个PHP扩展Plua, 把Lua解析器嵌入了PHP.
Lua的堆栈式传参, 很值得借鉴, 这点上, 感觉比PHP用一个结构体表示弱类型, 要来的更严格, 更可靠一些.
目前可以想到的应用场景, 是可以实现一种编写(Lua), 多处调用(C, PHP, Java等).
不废话了, 项目主页: Plua
代码在Google code上:http://code.google.com/p/plua/
本来觉得PPT里没什么东西, 犯不着放出来, 不是内容不丰富哈, 主要都是现场讲的内容.
不过, 既然有人要, 那就放到blog吧, 也当做留个念想.
总体来说, 这次峰会上, 我介绍了Ap(一个PHP扩展编写的PHP框架, 感兴趣的朋友可以看:Yaf-A PHP Framework Extension)在百度的应用.
4月的时候, 做了一个关于PHP性能优化的技术交流.
今天把当时交流的PPT放到slideShare了.
顺便谈一下对PHP性能优化的一些看法.
如我在2011PHP技术峰会上介绍的Ap, 它的开源版本Yaf 2.0终于发布了.
后续我会建立一个专门的site来做文档, 等相关支持工作.. 现在就是先行放出源代码和手册.
手册地址:http://yaf.laruence.com/manual
源代码地址:http://code.google.com/p/yafphp/
如果有公司或者企业用户使用, 可以咨询我相关部署开发规范细则..
另外, 作为开源项目, Yaf非常渴望有兴趣的同学一起参与开发. 贡献自己的代码. 当然, 因为打算做一个Yaf的Site, 也需要一些前端的同学, 参与进来.. 先谢谢大家的热情了.
谢谢
以下是一些PHP Coding Tips. 当然, 这些Tips并不一定仅仅局限于PHP.
大家有什么好的心得, 欢迎直接回复本文与更多的人分享.. 谢谢
本文长期更新, 请关注PHP Coding Tips
最后更新: 2011/04/02
今天同事eddix告诉我发现一个PHP的warning,
$php --re dummy Warning: Internal error: Cannot find extension function Dummy in global function table in Unknown on line 0
以前没有遇到过, 不知道什么意思.
with 5 Comments首先让我们看一个问题: 如下代码的输出,
var_dump(memory_get_usage()); $a = "laruence"; var_dump(memory_get_usage()); unset($a); var_dump(memory_get_usage());
输出(在我的个人电脑上, 可能会因为系统,PHP版本,载入的扩展不同而不同):
int(90440) int(90640) int(90472)
注意到 90472-90440=32, 于是就有了各种的结论, 有的人说PHP的unset并不真正释放内存, 有的说, PHP的unset只是在释放大变量(大量字符串, 大数组)的时候才会真正free内存, 更有人说, 在PHP层面讨论内存是没有意义的.
那么, 到底unset会不会释放内存? 这32个字节跑哪里去了?
你也许注意到过, 在PHP中使用ECHO输出大段字符串的时候, 执行时间会明显的长, 也就会有朋友认为PHP的ECHO性能很差.
我在之前的文章中, 已经解释过了原因, 也希望能纠正"PHP的ECHO性能差"的这个误会.
然而之前的文章, 也仅仅是给出了原因, 并没有介绍如何避免这个问题, 在今天公司内的某个产品线(Apache with PHP)发现了一个问题, 有用户在短时间内大量发起下载请求, 导致http连接数和数据库连接数剧增,
而数据库连接数剧增的原因是因为数据库的连接是单列模式, 一直到请求处理结束, 才会释放数据库链接. 这样就有了一个问题, 如果请求处理时间过长, 就会造成大量的数据库链接存在.
而这个用户的网速很慢,, 下载时间很长~, 这也就意味着, ECHO的"性能"很差~
这也就引出了今天我要谈的这个问题, 如何让ECHO变快, 让PHP的请求处理过程, 尽快结束...
Can't find what you're looking for? Try refining your search: