菜鸟需要了解的swoole的基础知识

额,各位大佬勿喷,本篇文章主要讲学习swoole的需要了解的一些知识


首先讲下swoole是什么 swoole官网:www.easyswoole.com;轻松学swoole的框架:www.easyswoole.com


仙士可博客


关于swoole安装等,请看文档


学习swoole需要了解的一些东西


一:了解php的4种执行方式CGI、FastCGI、APACHE2HANDLER、CLI 传送门:http://www.jb51.net/article/62554.htm


swoole是使用php-cli方法执行的,swoole扩展需要常驻内存运行


二:了解常驻内存运行

关于php-cli运行,可能很多人不了解,可以举个例子

while(1){

echo 1;

sleep(1);

}

这段代码,在web网络请求中,是会超时的,因为php代码永远都执行不完,则web访问会默认30秒的超时时间,超时则停止php运行

而在命令行模式,则会不断的输出1,每隔1秒输出一次,除非手动停止,否则永久执行,这就是常驻内存运行

常驻内存运行不能用die,exit()函数,甚至是sleep函数,否则会终止或者影响php执行,具体可看swoole文档


当然,常驻内存运行不仅仅是关于这个的,在swoole中,可以绑定各种网络请求的回调,如同js绑定事件



暂时只想到这些需要了解的一些基础知识点,以后会补充


仙士可博客
请先登录后发表评论
  • 最新评论
  • 总共3条评论
仙士可博客

Ansion:30秒是php.ini的超时上限设置的,你也可以用

2017-11-13 23:32:34 回复

仙士可博客
  • 仙士可 回复 Ansion:我说的是默认,你设置这个,和swoole无关,而且设置这一个不够,还得加上一个ignore_user_abort(true); //忽略客户端断开,脚本继续运行
  • 2017-11-13 23:34:08 回复
仙士可博客
  • 仙士可 回复 仙士可:对了,我忘记了另一个问题,那就是,就算你设置不超时,忽略客户端断开,在web环境中,必须得php执行完毕,才算一个http请求结束,也就是说,你永远等不到php输出数据到web端
  • 2017-11-15 16:59:34 回复
仙士可博客

Naruto alert('123')

2017-11-08 21:33:54 回复

仙士可博客

诗与远方:逼王,我来了

2017-11-08 18:59:52 回复

仙士可博客
  • Naruto 回复 诗与远方
  • 2017-11-08 21:26:55 回复
仙士可博客
  • 仙士可 回复 诗与远方:带点礼物来啊
  • 2017-11-08 21:36:24 回复
  • 本站由白俊遥博客程序搭建
    © 2017-1-17 php20.cn 版权所有 ICP证:闽ICP备17001387号
  • 联系邮箱:1067197739@qq.com