- 软件介绍
- 相关专题
- 下载地址
Swoole简介
Swoole可以提高HTTP和TCP的服务性能。如果您经常进行系统请求服务,您可以选择该软件来提高通信性能。当您将软件部署到开发程序时,您可以在配置期间通过该软件编辑请求服务方案。软件提供了很多编译选项,支持通用参数、特殊参数、Debug参数和PHP编译参数。您可以根据不同的服务请求项目配置新参数。该软件可与TCP、UDP、HTTP、WebSocket、MQTT(物联网)、异步Task结合使用,并附有详细教程,让用户在开发新应用时获得更好的服务请求性能!
Swoole软件功能
通信程序设计
Swoole是C++编写的基于异步事件驱动和协同的并行网络通信引擎,为PHP提供高能网络编程支持。
事件驱动
Swoole中的网络请求处理是基于事件的,并且充分利用了底层的epoll/kqueue实现,这使得为数百万个请求提供服务变得非常容易。
Swoole4采用了全新的协同学内核引擎,现在有了专职的开发团队,所以我们正在进入一个PHP历史上前所未有的时期,这为的高速推广提供了独特的可能。
协同程序
Swoole4版或更高版本具有高度可用的内置协同程序,您可以使用完全同步的代码来实现异步功能。PHP代码没有任何额外的关键字,底层会自动进行协同调度。
开发人员可以将协同程序理解为超轻量级线程,您可以在一个进程中轻松创建数千个协同程序。
Swoole软件特色
Swoole: PHP协同框架
Swoole使PHP开发人员能够编写高能量、高并发的服务,如TCP、UDP、Unix Socket、HTTP、WebSocket等。,让PHP不再局限于Web领域。
Swoole4协同学的成熟将PHP带入了一个前所未有的时期,为能力的提升提供了独特的可能。
Swoole可广泛应用于互联网、移动通信、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。
使用PHP+Swoole可以大大提高企业IT R&D团队的效率,更加专注于开发创新产品。
Swoole使用说明
Swoole客户端
SwooleClient,以下简称Client,提供TCP/UDP和socket客户端的封装代码,只需要新增SwooleClient即可使用。适用于FPM/阿帕奇环境。
与传统的流系列功能相比,有几个优点:
流函数有超时设置的陷阱和Bug,处理不当会导致服务器长时间阻塞。
流函数的fread默认最大长度限制为8192,不能支持UDP数据包。
支持客户端waitall。当数据包长度确定后,无需循环读取即可一次取出。
支持客户端UDP连接,解决了UDP字符串包问题。
Client是专门研究socket的纯C代码,流函数非常复杂。客户可以更好。
客户端支持长连接。
可以使用swole _ Client _ select功能实现多个客户端的并发控制。
完整的例子
方法__construct()构造方法
参数
int $sock_type
功能:表示套接字的类型[支持swole _ sock _ TCP、swole _ sock _ TCP 6、swole _ sock _ UDP、swole _ sock _ UDP 6]
默认值:无
其他值:无
int $is_sync
功能:同步阻塞模式,现在只有一种类型,这个参数只是为了api兼容而预留的。
默认值:SWOOLE_SOCK_SYNC
其他值:无
stng $密钥
功能:长连接的密钥[默认情况下使用IP:PORT作为密钥。相同的密钥,即使新的只使用一个TCP连接两次]
默认值:IP:端口
其他值:无
用PHP-FPM/阿帕奇创建一个长连接
添加SWOOLE_KEEP标志后,创建的TCP连接在PHP请求的末尾,或者调用$ CLI->:Close()不会关闭。下次执行连接调用时,将重复使用上次创建的连接。默认情况下,保存长连接的方法基于服务器主机:服务器端口。您可以在第三个参数中指定键。
客户端析构函数自动调用close方法来关闭套接字。
要在服务器中使用客户端,必须在事件回调函数中使用客户端。
服务器可以与任何语言编写的套接字客户端连接。同样,客户端也可以连接用任何语言编写的套接字。
在Swoole4+协同环境中使用该客户端将导致向同步模式的回归。
Set()设置客户端参数,这些参数必须在连接之前执行。
部署
客户端可以使用set方法设置一些选项和启用一些功能。
协议分析
协议分析为了解决TCP卡包问题,相关配置的意义与SwooleServer一致。
终止符检测
长度检测
目前支持open_len_check和open _ eof _ check两种自动协议处理功能。
配置协议解析后,客户端的recv()方法将不接受长度参数,每次都会返回一个完整的数据包。
MQTT协议
启用MQTT协议解析,onReceive回调将接收完整的MQTT数据包。
套接字缓冲区大小
包括作为系统缓冲区的套接字底层、接收数据的应用层存储缓冲区和发送数据的应用层存储缓冲区。
关闭Nagle合并算法
与SSL相关的SSL/TLS证书配置
ssl_vefy_peer
身份验证结束证书。
启用后,它将验证证书是否对应于主机域名,如果不对应,它将自动关闭连接。
自签名证书
您可以将ssl _ allow _ self _ signed设置为true以允许自签名证书。
ssl _主机名
设置用于ssl_vefy_peer配置或客户端::vefyPeerCert的主机名。
ssl_cafile
当ssl_vefy_peer设置为true时,将使用用于验证远程证书的CA证书。该选项的值是本地文件系统中CA证书的完整路径和文件名。
ssl_capath
如果未设置ssl_cafile,或者ssl_cafile引用的文件不存在,将在ssl_capath指定的目录中搜索适用的证书。该目录必须是已哈希的证书目录。
ssl _密码短语
本地证书ssl_cert_file文件的密码。
例子
package_len_func
设置长度计算功能,与SwooleServer的package_len_func的使用方法完全一致。与open_len_check一起使用。长度函数必须返回一个整数。
0,数据不足,需要接收更多数据。
Return -1,数据有误,底层会自动关闭连接。
返回包的总长度(包括头和体的总长度),底层会自动把包放在一起返回回调函数。
默认情况下,底层最多读取8K数据。如果头长度很小,可能会有内存拷贝消耗。可以设置package_body_offset参数,底层只读取长度解析的头。
例子
socks5_pxy
配置socks5代理。
仅设置一个选项无效;每次都必须设置主机和端口;Socks5_username和socks5_password是可选参数。Socks5_port和socks5_password不允许为null。
http_pxy
配置HTTP代理。
Http_pxy_port和http_pxy_password不允许为null。
基本设置
身份验证设置
约束
仅设置绑定端口无效,请同时设置绑定端口和绑定地址。
当机器有多个网卡时,设置bind_address参数可以强制客户端Socket绑定到某个网络地址。
设置绑定端口使客户端套接字能够使用固定端口连接到外部网络。
- 安卓合集
- 软件合集
- 浏览器
- 电脑管家
- 安卓游戏
软件排行榜
热门推荐
-
VMware InstallBuilder Enterprise破解版
v20.12.0 / 347 MB / 简体中文
-
Spark Studio官方版
v2.6.3 / 7.78 MB / 简体中文
-
Yearning SQL审核平台官方版
v2.3.2 / 10.2 MB / 简体中文
-
Protege官方版
v5.5 / 38.3 MB / 简体中文
-
HUAWEI LiteOS Studio官方版
v1.45.6 / 115 MB / 简体中文
-
Huawei LiteOS官方版
v5.0.0 / 87.6 MB / 简体中文
-
C语言代码实例助手官方版
v1.0 / 38.5 MB / 简体中文
-
idle python中文汉化版
v3.7 / 1.62 MB / 简体中文
-
Metabase官方版
v0.37.5 / 45.8 MB / 简体中文
-
编程猫硬件助手官方版
v1.4.1.0 / 39.3 MB / 简体中文
装机必备软件
-
word文档密码破解工具应用软件
-
冰点还原永久免费版系统软件
-
人生日历应用软件
-
一彩送货单管理系统应用软件
-
Process View系统软件
-
开心手机恢复大师其他类别
-
pdf文件阅读器应用软件
-
视频剪辑格式工厂应用软件
-
PhotoMetri应用软件
-
specinker应用软件
-
miwifi驱动驱动工具
-
海洋色音效助手影音软件
-
乐播投屏影音软件
-
seo外链助手网络软件
-
AES安全加密记事本安全相关





