摘要: PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。 Swoole内置了Http/WebSocket服务器端/ 阅读全文
posted @ 2019-12-04 15:04 .Ronin 阅读(448) 评论(0) 推荐(0) 编辑
摘要: 近日,PHP 7.4.0 发布了,此版本标志着 PHP 7 系列的第四次特性更新。 PHP 7.4.0 进行了许多改进,并带来了一些新特性,包括: Typed Properties 类型属性 类属性现在支持类型声明,以下示例将强制 $User-> id 只能分配 int 值,而 $User-> na 阅读全文
posted @ 2019-12-04 13:27 .Ronin 阅读(364) 评论(0) 推荐(0) 编辑
摘要: PHP常用socket创建TCP连接,使用CURL创建HTTP连接,为了简化操作,Swoole提供了Client类用于实现客户端功能,并增加了异步非阻塞模式,让用户在客户端也能使用事件循环。 作为客户端使用,Swoole Client可以在FPM环境下或 Apache中使用,但不允许使用Async异 阅读全文
posted @ 2019-12-03 16:57 .Ronin 阅读(707) 评论(0) 推荐(0) 编辑
摘要: 在workerman中会经常使用,我们先写一个回调函数,当某个行为被触发后使用该函数处理相关逻辑。 在PHP中最常用的几种回调写法如下 匿名函数做为回调 匿名函数(Anonymous functions),也叫闭包函数(closures),允许临时创建一个没有指定名称的函数。最经常用作回调函数(ca 阅读全文
posted @ 2019-12-02 23:05 .Ronin 阅读(405) 评论(0) 推荐(0) 编辑
摘要: golang和swoole区别 开发效率 Go语言是本质上是静态语言,开发效率稍差,但性能更强,更适合底层软件的开发 Swoole使用PHP语言,动态脚本语言,开发效率最佳,更适合应用软件的开发 IO模型 go语言使用单线程eventloop处理IO事件,多线程实现协程调度,执行用户层代码 swoo 阅读全文
posted @ 2019-12-02 22:44 .Ronin 阅读(2499) 评论(0) 推荐(0) 编辑
摘要: 在 Swoole 官网的自我介绍是“面向生产环境的 PHP 异步网络通信引擎”,首先 Swoole 它是一个网络应用的开发工具,它支持 Http、TCP、UDP、WebSocket。 Swoole 和我们传统的 PHP 开发差别是有的,需要理解的概念也是有的。使用目前一些基于 Swoole 的框架开 阅读全文
posted @ 2019-12-02 22:39 .Ronin 阅读(1622) 评论(3) 推荐(0) 编辑
摘要: Swoole进程间通信的方式 管道pipe 管道用于进程之间的数据交互,Linux系统本身提供了pipe函数用于创建一个半双工通信管道。半双工的通信方式中数据只能单向流动(一端只读一端只写),只能在具有亲缘关系(父子进程)的进程之间使用。 管道是进程间通信IPC中最基础的方式,管道有两种类型分别是命 阅读全文
posted @ 2019-12-02 22:33 .Ronin 阅读(1055) 评论(0) 推荐(0) 编辑
摘要: 官方解释yield yield生成器是php5.5之后出现的,官方文档这样解释:yield提供了一种更容易的方法来实现简单的迭代对象,相比较定义类实现 Iterator 接口的方式,性能开销和复杂性大大降低。 生成器的核心是一个yield关键字,一个生成器函数看起来像一个普通的函数,不同的是:普通函 阅读全文
posted @ 2019-12-02 15:02 .Ronin 阅读(890) 评论(0) 推荐(0) 编辑
摘要: RESTful 是目前最流行的 API 设计规范,用于 Web 数据接口的设计。 什么是RESTful RESTful是一种软件设计风格, 主要用于客户端与服务端交互的软件. 一般来说RESTful API基于HTTP协议, 通过某个唯一标识符(URI)请求对应的服务器资源(Resource).通常 阅读全文
posted @ 2019-11-30 17:02 .Ronin 阅读(323) 评论(0) 推荐(0) 编辑
摘要: 需求 如果需要将可能含有中文的字符串进行拆分成数组,我们下面以 utf-8 编码为例。 解决方案一 我习惯的方法可能是: mb_internal_encoding("UTF-8"); $str = "周梦康"; $array = []; for ($i=0,$l = mb_strlen($str); 阅读全文
posted @ 2019-11-29 16:38 .Ronin 阅读(399) 评论(0) 推荐(1) 编辑