#17 closed улучшение (wontfix)
Добавить настройку перезапуска модуля SIM при отсутствии подключения к серверу.
Reported by: | san | Owned by: | alx |
---|---|---|---|
Priority: | major | Milestone: | 1 очередь |
Keywords: | Cc: | andrei |
Description
Предлагаю добавить в веб-интерфейсе для устройств клиент пользовательскую настройку "Перезапуск модуля SIM при отсутствии подключения к серверу" и настройка времени ожидания подключения.
Это было бы страховкой на тот случай, если что-то пошло не так на каком-то этапе работы с модулем сим (например SIM сошёл с ума, как в #16) и подключение к серверу не произошло.
Можно конечно пойти дальше и перезапустить весь контроллер, но сомневаюсь что это правильно...
Change History (8)
comment:1 by , 6 years ago
Owner: | set to |
---|---|
Status: | new → assigned |
comment:2 by , 6 years ago
follow-ups: 4 8 comment:3 by , 6 years ago
В устройстве два последовательных интерфейса, и один из них может работать как клиент (инициировать подключение к удаленному серверу), а другой - как сервер (принимать соединения от других хостов).
Вот это для меня странно :) Если один порт - сервер, какой смысл делать другой порт клиентом? ну да ладно не об этом речь...
Во-вторых, верно ли я понял, что предлагается сделать две разные ветки ПО - одну для устройств клиент, куда будет добавлена предлагаемая настройка, и другую - для устройств сервер, где этой настройки не будет?
Нет не правильно. Давай будем для простоты считать, что я не писал "для устройств клиент".
В системе помимо одного подключения к серверу, о котором идет речь, может существовать множество других подключений
Таки подключение к серверу основная функция, без него всё остальное не имеет смысла.
деструктивной
На мой взгляд если задать разумный таймаут, например 1 час, к какой-то страшной деструкции перезапуск не приведёт.
Подключение к серверу может не произойти по множеству причин, никак не связанных с модулем SIM: от неправильной настройки имени сервера до отсутствия питания самого сервера.
Сам сервер, как правило расположен "в тепле и сухости" и рядом с ним всегда есть персонал, который следит чтобы с ним всё было в порядке, а клиенты находятся чёрт знает где и ехать туда персоналу можно часами. Поэтому я считаю проблемы клиента наиболее вероятными.
Вот, например, я недавно со своим оператором решал проблему - после пропадания сети в определённой географической точке и востановления подключения, передача данных не подключалась до тех пор пока я снова не переподключусь к сети. В подобном случае рестарт модуля или контроллера тоже бы позволил устройству продолжить работу.
Андрей, я бы твоё мнение тоже хотел услышать.
comment:4 by , 6 years ago
Replying to san:
Если один порт - сервер, какой смысл делать другой порт клиентом?
Об этом надо спрашивать не меня, а пользователя устройства. Мое дело - дать возможность пользователю настроить устройство так, как ему хочется.
Два имеющихся в устройстве последовательных порта никак логически друг с другом не связаны. Фактически, это два независимых устройства ("модема") в одном корпусе. И я не вижу причин запрещать пользователю использовать их в разных режимах (один как клиент, другой - как сервер).
В системе помимо одного подключения к серверу, о котором идет речь, может существовать множество других подключений
Таки подключение к серверу основная функция, без него всё остальное не имеет смысла.
Так эти самые "другие подключения", о которых я говорю - это ведь тоже подключения к серверу (серверам)!!! Во-первых, как я уже писал выше, у нас два устройства в одном корпусе, и второе устройство может работать сервером и иметь подключения клиентов. Во-вторых, даже если второй модем - это тоже клиент, то на дургом-то конце его соединения - все равно сервер! :) А модуль SIM - один на всех. И если из-за проблемы одного соединения его перезапускать, это приведет к перерыву связи других соединений.
деструктивной
На мой взгляд если задать разумный таймаут, например 1 час, к какой-то страшной деструкции перезапуск не приведёт.
Так как мы не знаем, что за данные будут передаваться через наши устройства, мы не можем судить о степени деструктивности перерыва связи. Вполне может быть, что перерывы связи раз в час могут оказаться для пользователя неприемлемыми. Учитывая, что польза от перезапуска SIM5320 сомнительна, я против такой меры.
Вот, например, я недавно со своим оператором решал проблему - после пропадания сети в определённой географической точке и востановления подключения, передача данных не подключалась до тех пор пока я снова не переподключусь к сети. В подобном случае рестарт модуля или контроллера тоже бы позволил устройству продолжить работу.
Этот пример не аналогичен предложенному тобой улучшению. Ты пишешь, что передача данных не подключалась. У меня нет никаких возражений против рестарта модуля SIM в таком случае. Более того, я сам недавно создал тикет #19, где предлагаю в такой ситуации перезапускать SIM. В данном же тикете ты предлагаешь выполнять перезапуск, если не устанавливается одно отдельно взятое соединение. Я считаю, что это - "из пушки по воробьям".
follow-up: 6 comment:5 by , 6 years ago
Я считаю, что это - "из пушки по воробьям".
С этим я даже не спорю, но если наличие воробьёв критично, то иногда можно и из пушки по ним :)
Этот пример не аналогичен предложенному тобой улучшению
Я пытался предложить более "широкий" вариант, который возможно защитит и о каких-то других проблем, которые мы может-быть сейчас не видим, понятно что всего мы не предусмотрим, но я пытаюсь максимально приблизиться к одному условий задания руководителя( "чтобы не зависал").
comment:6 by , 6 years ago
Replying to san:
я пытаюсь максимально приблизиться к одному условий задания руководителя( "чтобы не зависал").
:) Я думаю, что случай неустановки одного соединения выходит за рамки даже очень расширительного понимания слова "зависнуть"...
comment:7 by , 6 years ago
Resolution: | → wontfix |
---|---|
Status: | assigned → closed |
comment:8 by , 6 years ago
Андрей, я бы твоё мнение тоже хотел услышать.
Я поддержу Алексея - перезапускать SIM при условии что одно из многих соединений не соединяется не очень разумно - раз остальные работают, значит SIM живой.
Вот если все отвалились и не соединяются довольно продолжительное время, то да, можно и рестартануть попробовать. Только нужно с критериями определиться и с временем.
Replying to san:
Во-первых, непонятно, что значит "для устройств клиент"? В устройстве два последовательных интерфейса, и один из них может работать как клиент (инициировать подключение к удаленному серверу), а другой - как сервер (принимать соединения от других хостов)...
Во-вторых, верно ли я понял, что предлагается сделать две разные ветки ПО - одну для устройств клиент, куда будет добавлена предлагаемая настройка, и другую - для устройств сервер, где этой настройки не будет?
Я считаю такую функцию деструктивной. В системе помимо одного подключения к серверу, о котором идет речь, может существовать множество других подключений, работа которых будет нарушена при перезапуске модуля. Это все равно что когда в веб-браузере не получается открыть какую-то страницу из интернета, пойти и отключать электричество во всем офисе... :)
Такая страховка уже есть - если модуль не отвечает "OK" на какую-то из команд, его перезапускают.
Подключение к серверу может не произойти по множеству причин, никак не связанных с модулем SIM: от неправильной настройки имени сервера до отсутствия питания самого сервера.