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
最后更新于 2019年1月6日
相关博文
swoole 开发注意事项–by桶哥9月13号优才分享ppt