
PHP经常运用socket建立TCP衔接,运用CURL建立HTTP衔接,为了简化操纵,Swoole供应了Client类用于完成客户端功用,并增加了异步非壅塞形式,让用户在客户端也能运用事宜轮回。 (引荐进修: swoole视频教程)
作为客户端运用,Swoole Client能够在FPM环境下或 Apache中运用,但不许可运用Async异步形式,只能运用同步非壅塞形式,异步非壅塞形式仅限CLI形式下运用。
Client供应了TCP/UDP socket的客户端的封装代码,运用时仅需new Swoole\Client。
Swoole的socket客户端对照PHP供应的stream族函数有什么上风呢?
stream函数存在超时设置的圈套和Bug,一旦没有处置惩罚好将会致使服务器长时间壅塞。
stream和fread有8192长度限定,没法支撑UDP大包。
swoole_client客户端支撑waitall,在晓得包长度的情况下能够一次取完没必要轮回猎取。
swoole_client支撑UDP的connect处理了UDP串包的问题
swoole_client是纯C的代码
swoole_client支撑异步非壅塞回调
组织要领 constructor
Swoole的Client功用封装为一个swoole_client类,可通过new swoole_client来建立一个客户端实例。
原型
swoole_client->__construct( int $sock_type, int $is_async = SWOOLEL_SOCK_SYNC, string $key);
参数
参数1:int $sock_type
$sock_type 示意socket范例,可运用swoole供应的宏来指定范例。
SWOOLE_TCP 建立TCP Socket SWOOLE_TCP6 建立IPv6 TCP Socket SWOOLE_UDP 建立UDP Socket SWOOLE_UDP6 建立IPv6 UDP Socket SWOOLE_SSL 开启SSL加密 SWOOLE_KEEP 开启衔接复用
个中SWOOLE_SSL与SWOOLE_KEEP不能零丁运用,需要与前四个选项配合作用。
// 建立并开启SSL加密的TCP客户端 $client = new swoole_client(SWOOLE_TCP | SWOOLE_SSL);
以上就是swoole client有什么用的细致内容,更多请关注ki4网别的相干文章!