`

为PHP添加swoole异步并行扩展

    博客分类:
  • PHP
阅读更多

为PHP添加swoole异步并行扩展

 

 

1. 确认安装环境

  • 仅支持Linux操作系统,核心代码兼容FreeBSD,需要调整某些编译的参数和细节才能通过
  • Linux内核版本2.3.32以上
  • PHP5.3.10以上版本
  • gcc4.4以上版本。核心代码兼容clang,需要关闭CPU亲和设置特性
  • cmake2.4+,编译为libswoole.so作为C/C++库时,需要使用cmake

 

2. 安装与配置

2. 1安装swoole:可pecl直接在线安装,或下载releases版本的swoole编译安装

 2.11 pecl安装swoole扩展

pecl不可用的请确认php安装目录的bin目录已加入系统变量

1
# pecl install swoole 

 2.12编译安装swoole扩展

从此处下载:http://pecl.php.net/package/swoole

1
2
3
4
# cd swoole
# phpize
# ./configure
# make && make install

2.2配置php.ini

phpinfo()确认Configuration File (php.ini) Path

添加:

1
extension=swoole.so

重启Apache查看php扩展库

1
2
# service httpd restart
# php -m

确认swoole已添加

官方文档:http://wiki.swoole.com/wiki/index/prid-1

 

3.测试

server.php:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    $serv = new swoole_server("0.0.0.0", 9501);
    $serv->on('connect', function ($serv, $fd){
        echo "Client:Connect.\n";
    });
    $serv->on('receive', function ($serv, $fd, $from_id, $data) {
        $serv->send($fd, 'Swoole: '.$data);
    });
    $serv->on('close', function ($serv, $fd) {
        echo "Client: Close.\n";
    });
    $serv->start();
?>

client.php:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
    $client = new swoole_client(SWOOLE_SOCK_TCP, SWOOLE_SOCK_ASYNC);
    $client->on("connect", function($cli) {
        $cli->send("hello world\n");
    });
    $client->on("receive", function($cli, $data){
        echo "Receive: $data\n";
    });
    $client->on("error", function($cli){
        echo "connect fail\n";
    });
    $client->on("close", function($cli){
        echo "close\n";
    });
    $client->connect('127.0.0.1', 9501, 0.5);
?>

Test:

 测试Server:

   

    测试Client:

   

 

 

End.

分享到:
评论

相关推荐

    Swoole异步并行和协程C扩展 v4.5.7

    为您提供Swoole异步并行和协程C扩展下载,Swoole是一个为PHP用C和C++编写的基于事件的高性能异步&协程并行网络通信引擎。同时也是PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程...

    Swoole异步并行和协程C扩展 v4.8.13.zip

    Swoole是一款强大的开源...综上所述,Swoole异步并行和协程C扩展是一个强大且功能丰富的工具,适用于需要处理大量并发请求的场景。通过理解和掌握Swoole,开发者可以构建出高性能的PHP应用,满足现代Web服务的高要求。

    Swoole异步并行和协程C扩展 v4.8.6.zip

    在"**Swoole异步并行和协程C扩展 v4.8.6.zip**"这个压缩包中,包含了Swoole的最新版本4.8.6的源码以及相关的说明文档,对于开发者来说,这是一个非常有价值的资源,尤其适用于那些希望深入理解Swoole工作原理或者...

    Swoole异步并行和协程C扩展 v4.5.11.zip

    Swoole是一款强大的开源的PHP扩展,用于构建高性能的网络应用。它提供了异步多线程、非阻塞I/O的特性,使得PHP能够...通过异步并行和协程机制,Swoole极大地提升了PHP处理高并发的能力,是现代Web应用开发的有力武器。

    Swoole异步并行和协程C扩展 v4.4.26.zip

    Swoole是一款强大的开源C语言编写的PHP扩展,它提供了异步并行处理能力,以及在PHP中实现协程(Coroutine)的框架。Swoole的版本为v4.4.26,这个版本可能包含了优化和修复了之前版本的一些问题,使其在性能和稳定性...

    Swoole异步并行和协程C扩展 v4.8.13

    Swoole框架是一个为PHP用C和C++编写的基于事件的高性能异步&协程并行网络通信引擎。同时也是PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步...

    swoole_loader扩展PHP.zip

    总的来说,Swoole Loader扩展为PHP开发者提供了强大的工具,用于构建高并发、高性能的网络应用,尤其是在需要实时交互和低延迟的场景下。通过这个扩展,PHP开发者可以充分利用现代硬件的潜力,将原本不适合PHP的场景...

    Swoole异步并行和协程C扩展 v4.5.9

    为您提供Swoole异步并行和协程C扩展下载,Swoole是一个为PHP用C和C++编写的基于事件的高性能异步&协程并行网络通信引擎。同时也是PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程...

    Swoole Loader扩展.7z

    总之,Swoole Loader扩展为PHP带来了强大的异步并行处理能力,是构建高性能网络应用的重要工具。无论是在Linux还是Windows平台,选择合适的版本安装并熟练运用Swoole,都能极大地提升PHP应用的性能和扩展性。

    php7及以上版本 swoole扩展

    Swoole是一个高性能的PHP扩展,专为网络并发设计,提供了异步多线程服务器、异步TCP/UDP网络客户端、HTTP服务器、WebSocket服务器、MySQL协议服务器等功能。它极大地提升了PHP处理高并发、长连接场景下的性能,使得...

    PHP扩展swoole,PHP7及以上版本可用

    Swoole作为PHP的异步并行扩展,极大地提升了PHP在Web服务领域的性能。通过利用其丰富的特性,开发者可以构建高性能的实时应用,如聊天室、游戏服务器、流媒体服务等。正确安装和熟练掌握Swoole,将为PHP开发者开启新...

    Swoole异步并行和协程C扩展-其他

    Swoole是一个为PHP用C和C++编写的基于事件的高性能异步&amp;协程并行网络通信引擎。同时也是PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步...

    PHP Swoole Loader扩展 Swoole扩展 Swoole Swoole Loade

    3. **协程支持**:Swoole Loader扩展为PHP提供了原生的协程支持,使得开发者可以在PHP中编写非阻塞的异步代码,显著提高系统吞吐量。 4. **热更新**:Swoole Loader支持热更新功能,允许开发者在不中断服务的情况下...

    Windows64位 Swoole Loader php73 扩展安装包-ts

    Swoole是一个高性能、异步、并行的PHP扩展,它使得PHP开发者能够编写服务器端的并发程序,从而提升Web应用的性能。这里的“ts”代表Thread Safe(线程安全),意味着这个扩展在多线程环境下已经过优化,可以保证线程...

    php7.0以上swoole扩展

    Swoole是一个高性能的、基于C语言开发的PHP扩展,专为PHP提供了异步并行编程的能力。标题指出“php7.0以上swoole扩展”,这意味着Swoole扩展自PHP 7.0版本起就被广泛支持,这在很大程度上提升了PHP处理网络并发和I/O...

    Swoole-loader扩展安装图文教程 Swoole扩展文件下载

    在PHP开发领域,Swoole是一个非常重要的工具,它是一个高性能、异步并行的PHP扩展,用于构建网络服务器。Swoole Loader是Swoole的动态加载器,能够帮助开发者更加便捷地使用Swoole的功能。这篇教程将详细介绍如何在...

    php_swoole_loader_2.2_php7.3_zts widows-x64版本

    Swoole是一个高性能的PHP扩展,它提供了异步并行编程的能力,能够极大地提升Web应用的性能,尤其是在处理I/O密集型任务如网络通信时。 首先,让我们深入了解Swoole扩展。Swoole是一个开源的C语言编写、为PHP设计的...

    Win64位 Swoole Loader扩展安装包-ts-NTS

    Swoole是一款开源的高性能、异步并行的PHP扩展,它为PHP提供了原生的网络通信和事件驱动框架,使得PHP可以进行低延迟、高并发的服务器端编程。Loader扩展则是Swoole为了实现自动加载PHP类而设计的,能够有效地提高...

Global site tag (gtag.js) - Google Analytics