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

業(yè)務系統(tǒng)與聊天系統(tǒng)流程設計,這樣架構合理嗎?

悉地網(wǎng)

814 4 3
4個回答

six

token設定一個驗證算法,GatewayWorker自己驗證就行,用不著再請求一遍tp

  • 悉地網(wǎng) 2024-04-10

    我的token是保存在業(yè)務數(shù)據(jù)庫中,并且有時效的

  • 悉地網(wǎng) 2024-04-10

    你說用JWT?

  • six 2024-04-10

    jwt也行

  • 悉地網(wǎng) 2024-04-10

    如果是一些復雜的鑒權邏輯呢?

  • six 2024-04-10

    復雜的不走數(shù)據(jù)庫都可以直接GatewayWorker里做吧

  • 悉地網(wǎng) 2024-04-10

    有一些場景需要業(yè)務系統(tǒng)進行鑒權比較合適,比如用戶付費聊天?如果鑒權邏輯放在聊天系統(tǒng),聊天系統(tǒng)會不會有點臃腫???

  • 悉地網(wǎng) 2024-04-10

    后續(xù)別的系統(tǒng)連接聊天系統(tǒng)不好管理把?

  • six 2024-04-10

    業(yè)務都走tp啊,GatewayWorker只做發(fā)送消息

  • 悉地網(wǎng) 2024-04-10

    每次收發(fā)聊天消息都要經(jīng)過web嗎?還是直連聊天系統(tǒng)?

  • six 2024-04-10

    業(yè)務都走web,gatewayWorker只做消息發(fā)送

  • 悉地網(wǎng) 2024-04-10

    不做客戶端消息接收?

  • 悉地網(wǎng) 2024-04-10

    好像理解你的意思了,跟文檔思想一樣

weijer

結合webman pusher服務就行了,消息處理端不需要跟數(shù)據(jù)庫產生任何連接,僅作數(shù)據(jù)推送

efnic

我的設計是:uniapp連接GatewayWorker時,GatewayWorker返回驗證信息【auth、client_id、timestamp】,設置未綁定超時關閉;
uniapp請求頭攜帶token,數(shù)據(jù)報文為上一步的驗證信息,請求thinkPHP業(yè)務系統(tǒng);

thinkPHP業(yè)務系統(tǒng),在鑒權成功后,通過GatewayClient綁定用戶id、加入分組、關閉連接等等操作。

efnic
/**
     * 將client_id與uid綁定
     * @param string $client_id
     * @param string $uid
     * @param string $auth
     * @return void
     * @throws Exception
     */
    public static function bindUid(string $client_id, string $uid, string $auth): bool
    {
        if (empty($auth) || strlen($auth) < 32) {
            throw new Exception('auth驗證參數(shù)為空');
        }

        $session = Gateway::getSession($client_id);
        $_auth = $session['auth'] ?? $session['uniqid'] ?? '';
        if (empty($_auth)) {
            throw new Exception('session驗證參數(shù)為空');
        }

        if (hash_equals($auth, $_auth)) {
            Gateway::bindUid($client_id, $uid);
            return true;
        }

        return false;
    }
  • efnic 2024-04-11

    業(yè)務系統(tǒng),鑒權通過后綁定uid時,一定要驗證接口收到的auth和GatewayWorker系統(tǒng)內Session是否相同。

  • 悉地網(wǎng) 2024-04-11

    你的消息收發(fā)是直連嗎?

  • efnic 2024-04-11

    這個看你需求,反正是GatewayWorker絕不做鑒權的操作。

  • 悉地網(wǎng) 2024-04-11

    鑒權,綁定uid,消息存儲等,都在業(yè)務系統(tǒng)中實現(xiàn)

  • 悉地網(wǎng) 2024-04-11

    GatewayWorker僅做消息收發(fā)功能

  • wocall 2024-04-11

    學習了??

  • 悉地網(wǎng) 2024-04-11

    一起學習把

年代過于久遠,無法發(fā)表回答
??