workerman 实现 websocket

概述

PHP使用workerman框架的websocket, 实现机器扫码检票, 异步刷新小程序页面的票状态.

首先,需要小程序前端页面使用openid作为标志(代码里是$uid)连接websocketServer

然后, 检票接口做完检票逻辑后, 将结果通过websocketClient推送到小程序页面

最后, 小程序根据接收到的推送消息处理页面

 

一. 什么是websock?

参考《看完让你彻底搞懂Websocket原理》(https://www.cnblogs.com/fuqiang88/p/5956363.html

深入浅出地介绍了websock的原理和作用,通俗易懂,膜拜大神。

 

二. 什么是workerman

实际上Workerman类似一个PHP版本的nginx,核心也是多进程+Epoll+非阻塞IO。Workerman每个进程能维持上万并发连接。由于本身常住内存,不依赖Apache、nginx、php-fpm这些容器,拥有超高的性能。同时支持TCP、UDP、UNIXSOCKET,支持长连接,支持Websocket、HTTP、WSS、HTTPS等通讯协以及各种自定义协议。拥有定时器、异步socket客户端、异步Mysql、异步Redis、异步Http、异步消息队列等众多高性能组件。

官网地址(http://doc.workerman.net/)

 

三. Nginx配置wss

ubuntu@VM-156-73-ubuntu:/usr/local/nginx/conf/vhost$ more test.com.cn.conf
upstream websocket1{
    server localhost:19988;
}

server
    {
        listen 80;
        listen 443;
        #listen [::]:80;
        server_name test.com.cn ;
        index index.html index.htm index.php default.html default.htm default.php;
        root  /data/www/zc2api.zhongchengbus.com.cn/public;

        charset utf-8;

        ssl on;
        ssl_certificate /usr/local/nginx/conf/cert/1_test.com.cn_bundle.crt;
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值