Отправка сообщений в реальном времени на встроенные устройства - PullRequest
0 голосов
/ 27 января 2019

Я разрабатываю прошивку в первый раз, и я наткнулся на шаблон, который я не знаю, как решить.Мне нужно иметь возможность отправлять произвольные сообщения на встроенные устройства.Содержимое может быть любым, от потока октетов до JSON.Встроенные устройства не доступны напрямую через сеть, однако они могут обращаться к Интернету.

Очевидным решением будет опрос.Но я бы хотел использовать механизм push для большей коммуникации в реальном времени, если это возможно.

Существует ли масштабируемый способ, например, открыть сокет на стороне клиента (встроенное устройство) и затем удерживать его?открыть, чтобы разрешить отправку сообщений со стороны сервера (в облаке)?

1 Ответ

0 голосов
/ 27 января 2019

Для каждого сетевого канала от встроенного устройства до сервера потребуются ресурсы сети и памяти от сервера.В больших масштабах он может исчерпать сервер и не сможет удерживать открытыми все соединения.

Одним из возможных решений для вашего случая является то, что каждое встроенное устройство будет регистрироваться на сервере, ирасскажите, как подключиться к нему при необходимости.Когда контент будет распространен, сервер снова подключится к каждому встроенному устройству и отправит его.Таким образом, соединения будут активны только при необходимости, и, возможно, это позволит серверу подключиться обратно к встроенным устройствам.

Например, давайте предположим, что встроенное устройство может быть подключено напрямую через сеть с использованиемих IP-адрес.Во время регистрации клиенты будут подключаться к серверу, и он будет регистрировать свои IP-адреса.Пока эти адреса остаются фиксированными, сервер теперь сможет передавать содержимое на удаленные устройства.

...