Возможно, я неверно сформулировал свой вопрос. На клиенте нет сокетов. Суть задачи в том, чтобы для каждого пользователя запустить отдельное подключение к сокетам биржи.
На данный момент оно так выглядит: воркер на сервере периодически проверяет в базе данных учётные записи, после чего для каждой подходящей создает подключение к сокету - и тут у меня, собственно, возникает проблема: при следующем запуске воркера он снова создаст подключение к сокету для каждого "правильного" пользователя. В результате - дублируются данные, отправляемые на клиент.
И такой кейс: пользователь хочет остановить получение уведомлений, из клиента идёт http запрос на остановку сокета. На бекенде, при обработке такого запроса мне потребуется как-то извлечь конкретное активное подключение и его уничтожить./перезапустить.
Похоже на то, что когда вы возвращаетесь на вторую активити с третьей, то authorName - пуст, и наверное запрос в БД с пустым authorName будет безрезультатным, как следствие и список будет пуст.
Кроме просто "вывести данные", еще несколько кнопок, редактирующих JSON-конфиг и запускающих/остановляющих процесс. Кстати, как сделать чтобы в экстренном случае завершения приложения(crtl-z, например, в терминале), последнее еще успевало кое-что сделать?
На данный момент оно так выглядит: воркер на сервере периодически проверяет в базе данных учётные записи, после чего для каждой подходящей создает подключение к сокету - и тут у меня, собственно, возникает проблема: при следующем запуске воркера он снова создаст подключение к сокету для каждого "правильного" пользователя. В результате - дублируются данные, отправляемые на клиент.
И такой кейс: пользователь хочет остановить получение уведомлений, из клиента идёт http запрос на остановку сокета. На бекенде, при обработке такого запроса мне потребуется как-то извлечь конкретное активное подключение и его уничтожить./перезапустить.
Вопрос - как и где хранить такие подключения?