国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

使用webman的自定義進程消費redis的訂閱導致進程64000

會飛的魚

問題描述

這里詳細描述問題

程序代碼

這里粘代碼

<?php

namespace process;

use support\Log;
use support\Redis;

class Async
{
/**

  • 監(jiān)聽redis訂閱
    */
    public function onWorkerStart()
    {
    Redis::subscribe('asyncpub',function ($data){
    if(!empty($data)){
    $data = json_decode($data, true);
    switch ($data['datatype']){
    case 'request':
    $this->https_curl($data['url'], [], 'GET');
    break;
    case 'cmd':
    exec($data['commend']['cli'].' '.implode(' ',$data['commend']['param']));
    break;
    default:
    }
    Log::info("訂閱消息接收參數(shù)",['data'=>$data]);
    }
    });
    }

報錯信息

這里粘貼報錯

worker[async:122068] exit with status 64000
RedisException: read error on connection to 127.0.0.1:6379 in webman/vendor/illuminate/redis/Connections/PhpRedisConnection.php:461
Stack trace:
webman/vendor/illuminate/redis/Connections/PhpRedisConnection.php(461): Redis->subscribe()

操作系統(tǒng)及workerman/webman等框架組件具體版本

這里寫具體的系統(tǒng)環(huán)境相關(guān)信息
4.2.1版本

517 1 0
1個回答

阿沁

有沒有可能 127.0.0.1:6379 本地環(huán)境redis沒有啟動

  • 會飛的魚 2025-03-20

    肯定是啟動了啊,但是由于是阻塞運行導致長時間的連接超時了,后面換成new 對象來調(diào)用就正常了 ~

  • tanhongbin 2025-03-20

    new 對象和 使用靜態(tài)有啥區(qū)別嘛? 是不是沒有設(shè)置 一直阻塞 導致的 阻塞也是有超時默認時間的

  • 會飛的魚 2025-03-20

    不太清楚,用Redis::subscribe調(diào)用訂閱 就一直繁忙 然后框架拋出異常64000,我是換成
    public function onWorkerStart()
    {
    $redis = new \Workerman\Redis\Client('redis://127.0.0.1:6379');
    $redis->subscribe('asyncpub',function ($channel, $message){
    if(!empty($message)){
    $message = json_decode($message, true);
    switch ($message['datatype']){
    case 'request':
    $this->https_curl($message['url'], [], 'GET');
    break;
    case 'cmd':
    shell_exec($message['commend']['cli'].' '.implode(' ',$message['commend']['param']));
    break;
    default:
    }
    }
    Log::info("訂閱消息接收參數(shù)",['message'=>$message]);
    });
    }
    這種寫法

??