随笔分类 -  Swoole

swoole
Swoole WebSocket 服务端如何主动推送消息?
摘要:最近有个朋友在使用swoole做一个在线看球赛的功能,球赛数据是实时更新的; 要实现的是用户在浏览网页自动更新球赛数据(数据源是一个三方机构提供的,明确上线3秒请求一次); 解决方案: 1.轮询: 客户端定时请求服务端接口(服务端再请求第三方接口); 大概就是这样一个流程;虽然流程和逻辑简单,但是负 阅读全文

posted @ 2020-08-05 15:45 长不大的菜鸟 阅读(3215) 评论(0) 推荐(0)

swoole多进程操作
摘要:多个任务同时执行 将顺序执行的任务,转化为并行执行(任务在逻辑上可以并行执行) 比如,我们要对已知的用户数据进行判断,是否需要发送邮件和短信,如果需要发送则发送。 不使用多进程时,我们首先判断是否发送邮件,如果需要则发送;然后再判断是否需要发送短信,如果需要则发送。如果发送邮件耗时2s,发送短信耗时 阅读全文

posted @ 2018-04-19 22:00 长不大的菜鸟 阅读(510) 评论(0) 推荐(0)

安装完 swoole 后出现 PHP Warning: PHP Startup: Unable to load dynamic library 'swoole.so'的解决方法
摘要:安装完 swoole 后出现 PHP Warning: PHP Startup: Unable to load dynamic library 'swoole.so' (tried: /home/soft/php/lib/php/extensions/no-debug-non-zts-2017071 阅读全文

posted @ 2018-03-30 17:28 长不大的菜鸟 阅读(5154) 评论(0) 推荐(0)

swoole1.8.0+版本异步redis安装(本实例为swoole1.8.10版本)详解
摘要:Swoole-1.8.0+版本增加了对异步Redis客户端的支持,基于redis官方提供的hiredis库实现。Swoole提供了__call魔术方法,来映射绝大部分Redis指令(本次安装实例为swoole1.8.10版本)编译安装hiredis (swoole1.8.10版本异步redis支持必 阅读全文

posted @ 2018-03-30 14:51 长不大的菜鸟 阅读(213) 评论(0) 推荐(0)

swoole集群 nginx配置
摘要:nginx配置文件: 只要是/swoole/路径中访问的连接 都会转发到负载均衡服务器 聊天室前端: 两台服务器都打开9502端口,即可,但现在还有一个问题,每台服务器都会生成各自的fd 发送消息时会有问题,这个问题还未解决,解决后在更新 阅读全文

posted @ 2018-03-19 10:52 长不大的菜鸟 阅读(573) 评论(0) 推荐(0)

Swoole2.0协程客户端连接池的实现
摘要:Swoole2.0官方默认的实例是短连接的,在请求处理完毕后就会切断redis或mysql的连接。实际项目可以使用连接池实现复用。 实现原理也很简单,使用SplQueue,在请求到来时判断资源队列中是否有可用的连接,如果有直接拿来复用。如果没有就创建一个新的连接。在连接使用完毕后再讲它重新放回到队列 阅读全文

posted @ 2018-01-16 10:54 长不大的菜鸟 阅读(372) 评论(0) 推荐(0)

swoole WebSocket 消息推送
摘要:server.php Cli命令行执行:/usr/local/php/bin/php server.php client.html admin.html 源码下载 阅读全文

posted @ 2018-01-15 16:21 长不大的菜鸟 阅读(3823) 评论(0) 推荐(0)

基于swoole搭建聊天室程序
摘要:1. 创建websocket服务器 swoole从1.7.9版本开始, 内置了websocket服务器功能,我们只需几行简单的PHP代码,就可以创建出一个异步非阻塞多进程的WebSocket服务器。 首先,我们在apache的工作空间下,新建一个项目,名称为swoole,然后在里面新建一个ws-se 阅读全文

posted @ 2018-01-15 11:21 长不大的菜鸟 阅读(610) 评论(1) 推荐(0)

使用php+swoole对client数据实时更新(下)
摘要:一篇提到了swoole的基本使用,现在通过几行基本的语句来实现比较复杂的逻辑操作: 先说一下业务场景。我们目前的大多数应用都是以服务端+接口+客户端的方式去协调工作的,这样的好处在于不论是处在何种终端的情况下,都可以完美的和服务端兼容。这样就轻松实现了MVC各个部分的真正解耦。但是提高程序的友好性还 阅读全文

posted @ 2018-01-15 11:08 长不大的菜鸟 阅读(391) 评论(0) 推荐(0)

使用php+swoole对client数据实时更新(上)
摘要:如果想对一个列表做实时的更新,传统的做法是采用轮询的方式。以web为例,通过Ajax定时请求服务端然后获取数据显示在页面。这种方式实现简单,缺点就是浪费资源。HTTP1.1新增加了对websocket的支持,这样就可以将被动展示转变为主动通知。也就是通过websocket与服务端保持持久链接,一旦数 阅读全文

posted @ 2018-01-15 11:06 长不大的菜鸟 阅读(343) 评论(0) 推荐(0)

swoole实现websocket推送
摘要:环境配置: swoole 1.9.3、centos6.5(虚拟机)、PHP7.01 思路: ①通过server中的collections取出fd ②写一个admin.html(管理员推送页面) 与 client.html(客户端),html页面的websocket自行可编写 并在server.php 阅读全文

posted @ 2018-01-15 11:05 长不大的菜鸟 阅读(397) 评论(0) 推荐(0)

Swoole来实现实时异步任务队列
摘要:假如要发100封邮件,for循环100遍,用户直接揭竿而起,什么破网站!但实际上,我们很可能有超过1万的邮件。怎么处理这个延迟的问题?答案就是用异步。把“发邮件”这个操作封装,然后后台异步地执行1万遍。这样的话,用户提交网页后,他所等待的时间只是“把发邮件任务请求推送进队列里”的时间。而我们的后台服 阅读全文

posted @ 2017-10-25 17:51 长不大的菜鸟 阅读(8181) 评论(0) 推荐(0)

thinkphp5 swoole 执行异步任务
摘要:目录结构: 服务器端: 进入你的根目录 执行 php think websocket:start 客户端: 服务端显示: 阅读全文

posted @ 2017-10-25 17:34 长不大的菜鸟 阅读(9820) 评论(0) 推荐(0)

swoole 安装方法
摘要:最近想用PHP写一个聊天网站,于是注意到了swoole这个扩展,看上它就是因为事件驱动异步非阻塞。 Swoole可以广泛应用于互联网、移动通信、企业软件、网络游戏、物联网、车联网、智能家庭等领域。 使用PHP+Swoole作为网络通信框架,可以使企业IT研发团队的效率大大提升,更加专注于开发创新产品 阅读全文

posted @ 2017-08-03 09:02 长不大的菜鸟 阅读(265) 评论(0) 推荐(0)

导航