swoole一

Jul 29, 2016 am 09:04 AM
gt server this

公司业务中,聊天系统用的是 swoole 框架,这个框架是c语言写的php扩展,使用起来也很方便!

1 安装 过程很简单(不做介绍)
2 来看看 从官网文档copy 过来的例子,我把注释写详细了

<code><span>// Server</span><span><span>class</span><span>Server</span>
{</span><span>private</span><span>$serv</span>;
<span>//构造函数</span><span>public</span><span><span>function</span><span>__construct</span><span>()</span> {</span><span>//新建一个对象,接收所有的ip链接,端口设置为9501</span><span>$this</span>-&gt;serv = <span>new</span> swoole_server(<span>"0.0.0.0"</span>, <span>9501</span>);
        <span>$this</span>-&gt;serv-&gt;set(<span>array</span>(
            <span>'worker_num'</span> =&gt; <span>8</span>, <span>//设置work进程的数量为8</span><span>'daemonize'</span> =&gt; <span>false</span>,<span>//设置为后台进程</span><span>'max_request'</span> =&gt; <span>10000</span>, <span>//每个worker进程允许处理的最大任务数</span><span>'dispatch_mode'</span> =&gt; <span>2</span>,
            <span>'debug_mode'</span>=&gt; <span>1</span>
        ));

        <span>$this</span>-&gt;serv-&gt;on(<span>'Start'</span>, <span>array</span>(<span>$this</span>, <span>'onStart'</span>));<span>//设置回调函数 onstart</span><span>$this</span>-&gt;serv-&gt;on(<span>'Connect'</span>, <span>array</span>(<span>$this</span>, <span>'onConnect'</span>));
        <span>$this</span>-&gt;serv-&gt;on(<span>'Receive'</span>, <span>array</span>(<span>$this</span>, <span>'onReceive'</span>));
        <span>$this</span>-&gt;serv-&gt;on(<span>'Close'</span>, <span>array</span>(<span>$this</span>, <span>'onClose'</span>));
        <span>$this</span>-&gt;serv-&gt;start();
    }

    <span>public</span><span><span>function</span><span>onStart</span><span>( <span>$serv</span> )</span> {</span><span>echo</span><span>"Start\n"</span>;
    }

    <span>public</span><span><span>function</span><span>onConnect</span><span>( <span>$serv</span>, <span>$fd</span>, <span>$from_id</span> )</span> {</span><span>$serv</span>-&gt;send( <span>$fd</span>, <span>"Hello {$fd}!"</span> );
    }

    <span>public</span><span><span>function</span><span>onReceive</span><span>( swoole_server <span>$serv</span>, <span>$fd</span>, <span>$from_id</span>, <span>$data</span> )</span> {</span><span>echo</span><span>"Get Message From Client {$fd}:{$data}\n"</span>;
    }

    <span>public</span><span><span>function</span><span>onClose</span><span>( <span>$serv</span>, <span>$fd</span>, <span>$from_id</span> )</span> {</span><span>echo</span><span>"Client {$fd} close connection\n"</span>;
    }
}
<span>// 启动服务器</span><span>$server</span> = <span>new</span> Server();</code>
登录后复制

A. 通过构造函数创建swoole_server对象
B. 调用set函数设置swoole_server的相关配置选项
C. 调用on函数设置相关回调函数 关于set配置选项以及on回调函数的具体说明

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介绍了swoole一,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

两个点博物馆:邦格荒地地点指南
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

两个点博物馆:邦格荒地地点指南
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

华为GT3 Pro和GT4的差异是什么? 华为GT3 Pro和GT4的差异是什么? Dec 29, 2023 pm 02:27 PM

华为GT3 Pro和GT4的差异是什么?

修复:截图工具在 Windows 11 中不起作用 修复:截图工具在 Windows 11 中不起作用 Aug 24, 2023 am 09:48 AM

修复:截图工具在 Windows 11 中不起作用

如何安装、卸载、重置Windows服务器备份 如何安装、卸载、重置Windows服务器备份 Mar 06, 2024 am 10:37 AM

如何安装、卸载、重置Windows服务器备份

如何修复无法连接到iPhone上的App Store错误 如何修复无法连接到iPhone上的App Store错误 Jul 29, 2023 am 08:22 AM

如何修复无法连接到iPhone上的App Store错误

Windows Server 2025预览版迎来更新,微软改善Insiders测试体验 Windows Server 2025预览版迎来更新,微软改善Insiders测试体验 Feb 19, 2024 pm 02:36 PM

Windows Server 2025预览版迎来更新,微软改善Insiders测试体验

微软发布 Windows Server vNext 预览版 25335 微软发布 Windows Server vNext 预览版 25335 Jan 10, 2024 am 08:49 AM

微软发布 Windows Server vNext 预览版 25335

怎么修改Nginx版本名称伪装任意web server 怎么修改Nginx版本名称伪装任意web server May 14, 2023 pm 09:19 PM

怎么修改Nginx版本名称伪装任意web server

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决

See all articles