問題タブ [laravel-websockets]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
laravel - Laravel Websockets がアップデートを配信していないか、Laravel Echo がそれらをリッスンしていません。
私は1年半の間、これに対する解決策を見つけようとしてきました.これは、解決策が見えないこの問題に関する私の別の投稿ですhttps://github.com/beyondcode/laravel-websockets/issues/322
その投稿以来、何も変更されていないため、関連するすべてのリソースの比較的最新バージョンがあります (先月半に更新されました)。
パッケージ.json
composer.json
そして、その問題は何も変わっていないことを報告したので、今の違いは、私の問題はチャットモジュールでより顕著であることです.
基本的に、websockets はほとんどの部分で機能しますが、何らかの奇妙な理由で、ある時点で購読しているユーザーに更新を配信しないことを決定するか、laravel echo がスリープ状態になり、配信された更新の処理を忘れるため、X がメッセージを送信します人 Y に、しかし人 Y はそのメッセージを受信しません。ある時点で、人 X が新しいメッセージを送信すると、システムが再び機能し始め、その後、人 Y は突然すべてのメッセージを受信しますが、最初のメッセージはもともと 30 分前に送信されたものです遅すぎるため、別の状況では、人々はチャットでメッセージの重複を見ることさえできます.予定の予約デスク、およびそれらのユーザーはメッセージが時間内に配信されなかったため、わかりません。
これは非常に散発的に発生するため、ローカル環境で再現できなかったので、問題を簡単に追跡できました。システムは 90% の時間で動作しますが、残りの 10% はユーザーに問題を引き起こすのに十分な影響を与えているようです。github リンクをたどった場合、そのコードはそれ以降何も変更されていませんが、chat モジュール サブスクリプションのコードを追加します (他のモジュールへの異なるサブスクリプションを持つ他の vue ファイルがあることに注意してください (5 つの異なるサブスクリプションがあると思います)ユーザーあたりのチャンネル登録総数):
会話.vue
channels.php
そして、これはイベントConversationEvent.phpです
これに加えて、これはBootstrap.jsファイルの Echo 構成です。
そしてBroadcast.php
github の投稿で述べたように、このhttps://alex.bouma.dev/installing-laravel-websockets-on-forge/に基づいて websockets の構成を完全に作成し、Forge で動作するようにしました。
わかりませんが、ユーザーが一定時間更新を受け取らなかった場合、自動的にチャンネル登録を解除するタイムアウトがあるのでしょうか? たとえば、一部のクライアントが私に送信したスクリーンショットには、メッセージの間隔が8分ほどあるため、そうは思いません。
私は本当に、本当にこの問題の解決策を最終的に見つけたいと思っているので、誰かが手を貸してくれるなら、本当に感謝しています.
前もって感謝します。
pusher - 例外: Illuminate/Broadcasting/Broadcasters/PusherBroadcaster.php
私のubuntu本番サーバーに表示され、「プッシャーへの接続に失敗しました」と表示されることがあります。常にではありません。どうすれば設定できるか提案してください。ありがとうございます。プッシャーにも接続されていると思います。