Swoole

  • 【Swoole系列2.3】TCP客户端2

    <?php// 连接TCP服务器$socket = stream_socket_client('tcp://120.79.16.128:9501', $errno, $errstr, 50);// 发送数据fwrite($socket, '我是一个php');// 接收数据$buffer = fread($socket, 9000);// 关闭连接fclose($socket);// 输出echo $buffer;注意:要在阿里云服务器的安全组配置中开放9501端口并且关闭防火墙。

  • 【Swoole系列2.2】TCP客户端1

    <?php// 构造方法$client = new Swoole\Client(SWOOLE_SOCK_TCP);// 连接到远程服务器if (!$client->connect('127.0.0.1', 9501, -1)) { exit("connect failed. Error: {$client->errCode}\n");}// 发送数据到远程服务器,必须在建立连接后,才可向对端发送数据$client->send("hello world\n");// 从服务器端接收数据echo $client->recv();// 关闭连接$client->c

  • 【Swoole系列2.1】TCP服务器

    <?php// 创建Server对象,监听全部地址。$server = new Swoole\Server('0.0.0.0', 9501);// 设置运行时的各项参数$server->set(array( 'worker_num' => 2, // 进程数 'max_request' => 50 // 每个进程最大接受请求数));// 监听连接进入事件。$server->on('Connect', function ($server, $fd) { echo "Client: Connect.\n";});// 监听数据接收事件。$server->on('

  • swoole process 单进程

    1 编写代码<?phpclass Process{ public $process = null; public function __construct() { /** * 实例化进程管理对象 * 参数一,callable $function 子进程创建成功后要执行的函数 * 参数二,是否将结果放入进程管道中 false为直接输出 */ $this->process = new Swoole\Process([$this, 'onProcess'], false); // 获取子进程id $pid = $this->getPid(); echo $pid; // 回收结束运

  • 【Swoole系列1.2】Swoole安装

    1 安装Swoole4.3# 步骤1:去http://pecl.php.net/package/swoole,找到swoole4.3下载链接,然后复制链接地址# 步骤2:下载压缩包wget http://pecl.php.net/get/swoole-4.3.3.tgz# 步骤3:解压压缩包tar zxvf swoole-4.3.3.tgz# 步骤4:安装配置cd swoole-4.3.3 // 进入swoole文件夹phpize // 生成configurefind / -name php-config // 查找php-config所在的目录,如/usr/local/php/bin/php

  • 【Swoole系列1.1】Swoole概述

    1 Swoole简介Swoole 是一个使用 C++ 语言编写的基于异步事件驱动和协程的并行网络通信引擎,为 PHP 提供协程、高性能网络编程支持。提供了多种通信协议的网络服务器和客户端模块,可以方便快速的实现 TCP/UDP服务、高性能Web、WebSocket服务、物联网、实时通讯、游戏、微服务等,使 PHP 不再局限于传统的 Web 领域。2 Swoole应用Swoole 使 PHP 开发人员可以编写高性能高并发的 TCP、UDP、Unix Socket、HTTP、 WebSocket 等服务,让 PHP 不再局限于 Web 领域。Swoole4 协程的成熟将 PHP 带入了前所未有的时

  • Swoole接口

    <?php// 编写自己的http服务器/** * 第1个参数, 0.0.0.0 表示监听本机所有的网址地址 * 第2参数,6060 表示监听端口号 当前建议1-1024之间是系统保留不要去用 */$http = new swoole_http_server('0.0.0.0', 6060);// 设置$http->set([ // 工作的进程数量 'worker_num' => 2, // 一个进程请求的最大次数 'max_request' => 1000]);// 相关事件的监听// 开始事件$http->on('start', function (swool

  • 编写http服务器

    <?php// 编写自己的http服务器/** * 第1个参数, 0.0.0.0 表示监听本机所有的网址地址 * 第2参数,6060 表示监听端口号 当前建议1-1024之间是系统保留不要去用 */$http = new swoole_http_server('0.0.0.0', 6060);// 设置$http->set([ // 工作的进程数量 'worker_num' => 2, // 一个进程请求的最大次数 'max_request' => 1000]);// 相关事件的监听// 开始事件$http->on('start', function (swool