Мне очень жаль моего плохого английского.
Я создал простую игру для веб-сокетов с voryx / ThruwayBundle для Symfony. Игра использует 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/
я использую Ubuntu 15.10 Сервер создан в Microsoft Azure, если это поможет
Я не знаю, что я могу сделать, чтобы эти RPC были доступны в любое время без перезапуска сервера websocket. Должен ли я выполнить какое-либо действие cron для сброса сервера websocket, если они перестали отвечать и как я могу это сделать.
Изменить # 1
RPCS отлично работает на моей локальной машине Убунту 14.04
Чтобы предотвратить исчезновение rpcs, я создал консольную команду symfony, чтобы проверить их некоторыми тестовыми данными. Затем я зарегистрировал эту команду как задание cron, которое будет выполняться каждую минуту.
Я не мог найти источник проблемы, но это простой способ избежать этого.
Других решений пока нет …