PHP socket笔记

https://blog.csdn.net/yuanxiaojiao0012/article/details/53539829

本地socket扩展安装
服务端实现 ->数据通信 接收信息 、发送信息
客服端实现 ->数据通信 接收信息 、发送信息

https://www.jianshu.com/p/f671d3895d13 测试demo还可以 服务端,客服端看代码还是很清楚的
http://www.cnblogs.com/thinksasa/archive/2013/02/26/2934206.html

初步实现,socket服务端可以支持多个客服端连接

群聊天: http://www.cnblogs.com/nickbai/articles/6169745.html

fds 是什么的缩写了? fd 文件句柄
read fds
write fds

阻塞的 select/poll模式

socket_send 发送数据到socket连接
socket_sendmsg 发送消息到socket连接
socket_write 写数据到socket缓存

socket错误编号:
10053
10054 远程主机强迫关闭了一个现有的连接。
10053 您的主机中的软件中止了一个已建立的连接。
10061

socket 业务逻辑处理

  1. 检查连接的合法性 auth_code
  2. 通知待处理的订单

recv
generating 生成、产生 eg: generating autoload file
generate

gateworker 与业务逻辑解耦: 单向的推送

GatewayWorker不接受客户端发来的数据,即GatewayWorker不处理任何业务逻辑,GatewayWorker仅仅当做一个单向的推送通道

getewayWorker get post 请求接口吗?

gatewayClient 实现双向通信 怎么实现了?

通信协议: http websocket tcp

GatewayWorker2
GatewayWorker基于Workerman开发的一个项目框架,用于快速开发TCP长连接应用,例如app推送服务端、即时IM服务端、游戏服务端、物联网、智能家居等等

GatewayWorker使用经典的Gateway和Worker进程模型。Gateway进程负责维持客户端连接,
并转发客户端的数据给BusinessWorker进程处理,BusinessWorker进程负责处理实际的业务逻辑(默认调用Events.php处理业务),并将结果推送给对应的客户端。
Gateway服务和BusinessWorker服务可以分开部署在不同的服务器上,实现分布式集群

GatewayWorker 主进程管理
BusinessWorker BusinessWorker进程负责处理实际的业务逻辑(默认调用Events.php处理业务)

posted @ 2019-06-17 11:34  ncsb  阅读(260)  评论(0编辑  收藏  举报