头像

swoole+socket聊天室视频教程【原创

来源:http://www.sucaihuo.com/video/102.html 素材火管理员 2017-08-11 07:25浏览(464) 收藏

php的高效,快速一直是web开发的首选,然而优势最终变成思维定势,在很多工程师看来php开发就等同于web开发,swoole的出现,突破了这一思维定势,使phper可以从web开发跳出。swoole+socket聊天视频教程
swoole+socket聊天室视频教程
分类:其他 > 大数据
下载资源: 19 下载资源 下载积分: 200 积分

程序员,你不是一个人;网站开发QQ群:35291327,在线充值,或联系QQ416148489直接充值

swoole适用场景

长链接
手游
智能硬件
物联网

常见问题

1)  Mysql Gone Away
             原因:mysql server主动关闭
             解决: mysqli 用 ping检测
                         PDO  异常码:HY000
2)  热加载
             a) server->start();之前的代码无法热加载
             b)  onWorkerStart require代码,并清除opcode cache
3)  超全局变量
             不建议使用,swoole不会自转化,且进程间不共享
4)  进程间数据共享
              内置swoole_table
              本地共享内存:apcu yac等
              网络共享内存: memcached, redis等
5)  内存泄漏
               max_request

粘包处理

TCP 流概念
                a)  没有边界
                b)  收发buffer

FPM为什么没有这个问题?
                1) http协议是标准的包头+包体的协议
                2) \r\n\r\n 来区别包头和包体

Swoole怎么处理?
                a)   'open_eof_check' => true, //打开EOF检测
                      'package_eof' => "\r\n", //设置EOF
                      示例: $client->send('swoole.con\r\nwiki.swoole');
                                  $cleint->send('.com\r\n\github.com/swoole');
                                  server:  $datas = explode("\r\n", $data);

                b)   'package_length_type'   => 'N',
		 'package_length_offset' => 0,       //第N个字节是包长度的值
		 'package_body_offset'   => 4,       //第几个字节开始计算长度
		 'package_max_length'    => 2000000,  //协议最大长度
声明:本文为原创文章,如需转载,请注明来源sucaihuo.com并保留原文链接:http://www.sucaihuo.com/video/102.html
评论16
头像

友情提示:垃圾评论一律封号,下载出错或者资源有问题请联系全栈客服QQ 416148489

1 2