不灭的焱

革命尚未成功,同志仍须努力下载JDK17

作者:Albert.Wen  添加时间:2017-11-28 23:31:42  修改时间:2024-04-29 23:35:18  分类:PHP库/系统/微信  编辑

从上篇的执行流程,可以得出第一个需要思维转换的点:

Swoole是完全的长驻内存的

这个是和web开发第一个很大的不同,之前我们在做web开发,基本不怎么考虑内存控制的问题,这里从两个方面来进行结比:

作者:Albert.Wen  添加时间:2017-11-07 10:18:54  修改时间:2024-04-28 23:47:56  分类:PHP库/系统/微信  编辑

Mix:高性能 • 极简 • 多功能『 内置 Server 基于 Swoole 的次世代 PHP 开发框架 

Group-Co:优雅的PHP异步协程框架,支持SOA服务化调用,适用于API、Http Server、Rpc Server、构建微服务、中间件。适用于高并发,io密集型场景

作者:Albert.Wen  添加时间:2017-10-29 21:09:18  修改时间:2024-04-29 21:36:31  分类:PHP库/系统/微信  编辑
作者:Albert.Wen  添加时间:2017-10-31 09:54:58  修改时间:2024-05-01 14:42:32  分类:PHP库/系统/微信  编辑

Swoole 用到的系统调用

(1) 内存管理

     FixedPool 固定分配内存池

     RingBuffer 环形内存缓冲区

(2) 定时器:timefd

(3) 信号处理:signalfd

(4) 数据通信:eventfd  + mmap

作者:Albert.Wen  添加时间:2017-11-28 23:24:58  修改时间:2024-04-28 23:48:03  分类:PHP库/系统/微信  编辑

PHP与SWOOLE的运行模式

php做为swoole的宿主,所以了解php本身的运行模式是必不可少的,下图是以cli下执行一个php文件时的完整流程

作者:Albert.Wen  添加时间:2017-10-29 21:16:15  修改时间:2024-04-28 23:48:13  分类:PHP库/系统/微信  编辑

CI框架在nginx服务器上配置rewrite去掉index.php的方法:

vim /usr/local/webserver/nginx/conf/nginx.conf
作者:Albert.Wen  添加时间:2015-07-08 23:20:48  修改时间:2024-04-30 22:26:40  分类:PHP库/系统/微信  编辑

项目中引进了ThinkPHP3.2.3的模型层,发现当SQL语句出错时,系统抛出的异常不是我想要的效果,打开文件 ThinkPHP\Library\Think\Db\Driver.class.php

找到代码:

$result = $this->PDOStatement->execute(); 

当上述PDO语句有异常时(如 SQL语句中数据表不存在),此处就会直接抛出PHP异常,后面的代码不会被执行,页面被中断,这不是我们想要的结果;

作者:Albert.Wen  添加时间:2015-07-06 15:42:30  修改时间:2024-04-28 23:48:15  分类:PHP库/系统/微信  编辑

找到文件:ThinkPHP\Library\Think\Db\Driver.class.php

找到代码:

// PDO连接参数
protected $options = array(
	PDO::ATTR_CASE => PDO::CASE_LOWER, // 改为 PDO::CASE_NATURAL
	PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
	PDO::ATTR_ORACLE_NULLS => PDO::NULL_NATURAL,
	PDO::ATTR_STRINGIFY_FETCHES => false,
);

把其中的 PDO::CASE_LOWER 改为 PDO::CASE_NATURAL

作者:Albert.Wen  添加时间:2015-06-24 23:11:14  修改时间:2024-04-28 23:48:20  分类:PHP库/系统/微信  编辑

wechat_redirect_url.png

作者:Albert.Wen  添加时间:2015-05-19 19:44:35  修改时间:2024-04-29 17:29:36  分类:PHP库/系统/微信  编辑