swoole webSocket server or client example

server:

$ws = new swoole_websocket_server(‘0.0.0.0‘, 9502);

$ws->on(‘open‘, function ($ws, $request) {    var_dump($request->fd, $request->get, $request->server);    $ws->push($request->fd, "hello world\n");});

$ws->on(‘message‘, function ($ws, $frame) {    echo "Message: {$frame->data}\n";    $ws->push($frame->fd, "server: {$frame->data}");});

$ws->on(‘close‘, function ($ws, $fd) {    echo "client-{$fd} is closed\n";});

$ws->start();

client:

$cli = new swoole_http_client(‘127.0.0.1‘, 9502);

$cli->on(‘message‘, function ($_cli, $frame) {    var_dump($frame);});

$cli->upgrade(‘/‘, function ($cli) {    echo $cli->body;    $cli->push("hello world");});
时间: 2024-12-29 07:25:28

swoole webSocket server or client example的相关文章

php只能做网站?基于swoole+websocket开发双向通信应用

前言 众所周知,PHP用于开发基于HTTP协议的网站应用非常便捷.而HTTP协议是一种单向的通信协议,只能接收客户端的请求,然后响应请求,不能主动向客户端推送信息.因此,一些实时性要求比较高的应用,如实时聊天.直播应用.在线网页游戏等,就不适合采用HTTP协议.即使采用客户端主动轮询的方式来间接实现双向通信,也会较大地增加服务器的负担,增大代码的复杂性,不利于维护. 那么,是否PHP就无法用来开发双向通信的应用呢? 答案是否定的.PHP内置socket通信支持,可以与linux程序基于socke

Swoole http server + yaf, swoole socket server + protobuf 等小结

拥抱swoole, 拥抱更好的php Swoole 是什么? Yaf 是什么? 接触swoole已经4年多了,一直没有好好静下心来学习.一直在做web端的应用,对网络协议和常驻内存型服务器一窍不通.一不留神swoole已经从小众扩展变成了流行框架,再不学习就完了 swoole + yaf swoole server 的角色 还是先用swoole来做一个http server. 常见的php web应用,通常是apache+fast-cgi 或者 nginx + php-fpm.这里以php-fp

使用swoole websocket 实现执行console php文件 把输出返回给浏览器

1 swoole websocket 服务端 2 <?php 3 $server = new swoole_websocket_server("0.0.0.0", 9501); 4 5 $server->on('open', function (swoole_websocket_server $server, $request) { 6 echo "server: handshake success with fd{$request->fd}\n"

golang(5):编写WebSocket服务,client和html5调用

本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/46882777 转载请必须注明出处! 1.关于websocket HTML5定义了WebSocket协议,能更好的节省server资源和带宽并达到实时通讯. 在JavaEE7中也实现了WebSocket协议. 在 WebSocket API,浏览器和server仅仅须要要做一个握手的动作.然后,浏览器和server之间就形成了一条高速通道. 两者之间就直接能够数据互相传送. 參考

使用Jetty搭建Java Websocket Server,实现图像传输

https://my.oschina.net/yushulx/blog/298140 How to Implement a Java WebSocket Server for Image Transmission with Jetty 创建一个从WebSocketHandler继承的类WSHandler: import org.eclipse.jetty.websocket.api.Session; import org.eclipse.jetty.websocket.api.annotatio

distributed programming---lab1(basic communication of server and client)

socket() creates an endpoint for communication and returns a file        descriptor that refers to that endpoint. The lab is about basic communication of server and client. The server is iterative server which only serves one client at a time. The so

javamail 发送邮件时 No authentication mechansims supported by both server and client

项目需求要更换发邮件服务器,变更成中转邮箱服务器发邮件.结果总是报 No authentication mechansims supported by both server and client . 搜了一堆东东,都不靠谱最后自己不断调试成功搞定.借鉴网址如下: http://stackoverflow.com/questions/8615730/javamail-with-ms-exchange-no-authentication-mechansims-supported-by-both-s

ubuntu下mysql安装(server、client、dev),开启、停止和重启,及常见错误

1. 在ubuntu下安装server和client很简单: (1)安装server apt-get install mysql-server 安装当中,会提示输入root账户的密码,按提示输入即可. 安装后默认开启了server (2) 安装client apt-get install mysql-client 2. 安装mysql的c语言开发接口 apt-get install libmysqlclient15-dev 3. 开启.关闭.重启 一.启动 1.使用 service 启动:ser

JVM Server与Client运行模式

JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升.原因是: 当虚拟机运行在-client模式的时候,使用的是一个代号为C1的轻量级编译器, 而-server模式启动的虚拟机采用相对重量级,代号为C2的编译器. C2比C1编译器编译的相对彻底,,服务起来之后,性能更高. java -version 可以直接查看出你使用的是client还是 server Jvm client代码: C:\Documents