基于swoole、redis做一个消息通知功能

本文介绍如何利用swoole常驻进程配合redis队列实现消息通知功能。根据服务器CPU核数设置swoole进程数,通过键值权重处理不同优先级的通知,数据量大时可增加进程数。示例代码未给出。
摘要由CSDN通过智能技术生成

利用swoole开启常驻进程,需要几个按自己的情况来定,swoole进程数最好是和服务器cpu核数相等

利用swoole启动的常驻进程不断的去探测redis队列里面的值,可以按键值来做一个快中慢这样的权重处理,需要急需处理,数据量大的可以用多几个进程,一般的可以分配不同的进程数来执行。

下面上代码:

swoole启动代码

function run()
{
    
    try {
    
        $swoole = new \swoole_server(127.0.0.1, 9999);
        $swoole->set([
            'daemonize' => 1, //是否开启守护进程
            'worker_num' => 8, //实际需要去设定
            'log_file' => __APP_LOGS_PATH__ . '/swoole.log'
        ]);
        $swoole->on('WorkerStart', 'onWorkerStart');
        $swoole->on('Receive', 'onReceive');
        $swoole->start();
    } catch (\Exception $e) {
    
        logs(['err_code' => $e->getCode(), 'err_msg' => $e->getMessage()], 'error');
    }
}swoole实时监测redis队列里的数据,根据键值进行权重排比
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值