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

workerman redis與mysql怎么才能配合使用

abcabcxx

請(qǐng)問(wèn)大神們,個(gè)人想法是先讀取redis->get讀取key,不存在時(shí)去數(shù)據(jù)庫(kù)取同時(shí)設(shè)置緩存,在redis->get中不能使用數(shù)據(jù)庫(kù)操作,正確寫(xiě)法應(yīng)該怎么寫(xiě),謝謝
錯(cuò)誤代碼 worker[BusinessWorker:8843] exit with status 64000
代碼如下

1669 4 0
4個(gè)回答

li914

1、先通過(guò)redis查詢數(shù)據(jù)存在,存在則直接返回
2、不存在,通過(guò)mysql查詢,并且保存和設(shè)置redis緩存,然后返回

redis 中的 get 方法,好像不能使用閉包(匿名)函數(shù)吧
我記得好像,閉包函數(shù)使用上層變量,需要使用 use 引入變量

  • abcabcxx 2022-05-26

    我使用的是composer require workerman/redis 安裝,讀取都是,判斷都是這樣一個(gè)方法,在({ })內(nèi)不能使用外面的變量與對(duì)象 ({ })后面加,會(huì)先執(zhí)行,這種方式應(yīng)該是異步了,所以不知道怎么寫(xiě)了
    $redis->get('key', function($result) {
    print_R($result);
    echo "\r\n";
    echo "11111111\r\n";
    });
    echo "222222222\r\n";
    判斷存在也是這樣寫(xiě)的同樣的問(wèn)題

    $redis->exists('key', function ($result) {
    print_R($result);
    echo "\r\n";
    echo "11111111\r\n";
    });
    echo "222222222\r\n";

    最終都是顯示
    222222222
    $result數(shù)組的值
    111111111

yzh52521

先 判斷 $redis->exists() 存在 獲取 $redis->get()
不存在 $redis->set();

  • abcabcxx 2022-05-26

    謝謝

  • abcabcxx 2022-05-26

    我使用的是composer require workerman/redis 安裝,讀取都是,判斷都是這樣一個(gè)方法,在({ })內(nèi)不能使用外面的變量與對(duì)象 ({ })后面加,會(huì)先執(zhí)行,這種方式應(yīng)該是異步了,所以不知道怎么寫(xiě)了
    $redis->get('key', function($result) {
    print_R($result);
    echo "\r\n";
    echo "11111111\r\n";
    });
    echo "222222222\r\n";
    判斷存在也是這樣寫(xiě)的同樣的問(wèn)題

    $redis->exists('key', function ($result) {
    print_R($result);
    echo "\r\n";
    echo "11111111\r\n";
    });
    echo "222222222\r\n";

    最終都是顯示
    222222222
    $result數(shù)組的值
    111111111

  • yzh52521 2022-05-26

    支持 閉包么?

  • abcabcxx 2022-05-26

    試過(guò)沒(méi)成功

li914

workerman/redis get可以支持閉包 截圖

  • abcabcxx 2022-05-26

    這個(gè)閉包我試過(guò),搞了好久,現(xiàn)在一試就好了,非常感謝 li914

抽不完的寂寞

不會(huì)異步就用redis擴(kuò)展同步用法吧,看手冊(cè)里workerman/redis用于subscribe訂閱,除此之外建議用redis擴(kuò)展。

  • 暫無(wú)評(píng)論
年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??