原创

从哲学与进化论看编程语言之争

从哲学与进化论看编程语言之争
Lenix 杨延斌

编程语言之争由来以久,编程界向来是此语言看不惯彼语言。c鄙视java,java鄙视.net,.net 鄙视php.今天就来以哲学与进化论的角度谈谈编程语言之争。
远古时期,上帝创造了万物,共同组成了栩栩如生的地球,有人类,各种动物,植物。他们共同组成了一个美好和平共处的操作系统-地球。每种生物都有其各自特点,鸟能飞,鱼善游,猴能爬树,植物生产果子与粮食供人类与动物食用。各个物种各司其职,相伴共生。共同组成了一个完整的可持续运行的系统。…

    

swoole 开发注意事项–by桶哥9月13号优才分享ppt

swoole里的对象是长驻内存的,所有象连接池 、配置项、单例等都是持久化的。

编写swoole程序要注意内存控制,像一定要及时释放资源,像mysql连接,文件读写,socket 连接等都要及时关闭,这是和普通php不一样的地方。static数据 也要及时清除,另外不建议在swoole里面用超全局全量,因为swoole是多进程的,所有进程间的变量不能共享,如果一定要使用,建议在框架里把超全局变量封装好。

swoole不适合做cpu密集计算型项目。

对mysql连接特别要注意,因为是长连接,所以时间长了,再去执行mysql查询就会出现 mysql has gone away错误, 解决办法是查询前采用ping 检测,如果连接断了,就重连。

还有要注意的是tcp粘包处理。

热加载  http://wiki.swoole.com/wiki/page/20.html 。

数据共享方法:可以用swoole table, apcu,yac ,redis,memcached.

 

•1)  Mysql Gone Away

原因:mysql server主动关闭

转载请注明:来源:http://blog.p2hp.com/archives/2298…

        

用Zephir开发PHP扩展.

Zephir  是一种类似于PHP的语言的高级语言,简化了PHP扩展的创建和可维护性. zephir扩展输出C代码 ,因此能被主流的C编译器编译和优化,如 gcc/clang/vc++.

它是优秀的Phalcon团队为开发第二版本框架所编写的新兴语言,其语法和PHP 非常相信,开发扩展非常方便,执行效率上据说是与C不分上下, 他的编译流程如下:Zephir -> C -> bin.

项目地址 https://github.com/phalcon/zephir  官网http://zephir-lang.com/

本文 主要分享Zephir在ubuntu下的安装与使用方法.…

        

thinkphp 框架 静态化,生成html

thinkphp  框架  静态化,生成html

使用thinkphp自带的buildHtml方法.

$this->buildHtml($Id, HTML_PATH .MODULE_NAME.CONTROLLER_NAME.ACTION_NAME. '/', '');

读取的时候,不经过php,直接读html文件, 需要nginx rewrite.

生成 html时,可在管理后台,的方法里加上面buildHtml方法生成.

前台或后台,每更改一次页面,要重新生成一次html.

此适用于非实时的 thinkphp页面.

可极大提高thinkphp的性能.…

            

使用php blenc扩展加密php源代码

使用php blenc扩展加密php源代码,不但可以加密源代码,还可以设置过期时间。

扩展地址 http://pecl.php.net/package/blenc

注意:不要启用opcache扩展,否则加密后的代码无法正常运行。

要加密的源码不需要<?php  及?>开始与结束标记

可指定个人密钥。

可指定一个BLENC模块过期日期。 你可以决定BLENC 模块将工作到一个日期。之后,BLENC不会解密任何文件.

这些都可以在头文件 blenc_protect.h中设置,设置好后再编译BLENC.

用法:

http://cn2.php.net/manual/en/function.blenc-encrypt.php

安装用phpize安装  phpize  ./configure make make install.

注意,如果安装后,访问php出现500错误,请试着打开 php.ini中的expose_php=On;

        

php 连接mongodb,mongodb异常退出再启动,php开始几次取不到数据的问题解决

php 连接mongodb,mongodb异常退出再启动,php开始几次取不到数据的问题解决

是由于mongodb的长连接导致的,长连接是默认的。

 

解决 办法 ,在php脚本 结束后 ,强制关闭mongodb连接

$mongo= new MongoClient("mongodb://whisky:13000/?replicaset=seta");

$mongo->close(true);