0

下手な英語で本当に申し訳ありません。Symfony 用の voryx/ThruwayBundle を使用して、単純な websocket ゲームを作成しました。ゲームはサーバーに登録された RPCS を使用します。すべて正常に動作しますが、約 20 分間離れると RPCS が利用できなくなります。そして、それらを再び利用できるようにするには、websocket サーバーを再起動する必要があります。

rpcs をワーカーとして登録しようとしましたが、それらが実行されているのを確認できますが、まだ利用できません websocket サーバー プロセス ステータス

RPC の登録に使用するアノテーションは

/**
 * @Register("games.snake.newplayer",serializerEnableMaxDepthChecks=true, worker="add-snake")
 */

コマンドでサーバーを実行します

nohup php app/console thruway:process start &

http://amusement.cloudapp.net/で見ることができます

助けがあれば、Microsoft Azureで作成されたUbuntu 15.10サーバーを使用しています

websocket サーバーを再起動せずにいつでもこれらの RPC を利用できるようにするために何ができるかわかりません。Websocket サーバーが応答を停止している場合、それらをリセットするために cron アクションを実行する必要があります。また、その方法を教えてください。

編集#1

RPCS は私のローカル マシンUbuntu 14.04でうまく動作します

4

1 に答える 1

0

rpcs の消失を防ぐために、symfony コンソール コマンドを作成して、いくつかのテスト データでそれらを ping しました。次に、このコマンドを 1 分ごとに実行される cron ジョブとして登録しました。

問題の原因を見つけることができませんでしたが、それを回避する簡単な方法です。

于 2015-12-06T16:28:45.470 に答える