Azure - базовая коммуникация приложений C# vs 2012
Я должен написать приложение с лазурью в C#, что:
имеет рабочую роль, сравнивающую информацию GPS, хранит информацию профиля пользователя
и может получить и установить оба из пользовательского устройства.
Например, я хочу, чтобы мое устройство периодически загружало свои координаты GPS на рабочий, открывая соединение с рабочей ролью, аутентифицируя пользователя, позволяя сохранять координаты GPS для любых существующих координат для этого пользователя. Также как отдельный работник, я не знаю, мне нужна рабочая роль, чтобы проверять и выполнять вычисления на gps всех устройств. Который в определенные моменты будет затем толкать некоторую информацию к конкретному устройству.
То, что я хочу, не кажется сложным, но найти простой пример tcp-сообщения от устройства к лазурной службе, которую я провел часами, просматривая связи между устройствами, которые я не понимаю
1 ответ
Программирование TCP с помощью Azure возможно, но не практично, если вам всегда нужна конечная точка TCP. Конечная точка TCP не может оставаться неактивной в течение длительных периодов времени в Azure.
Вы, конечно, можете использовать веб-сервисы, как предлагает Ондрей. Или вы также можете использовать Azure Queues. Я написал блог о масштабировании с помощью очередей Azure. Это решение на основе сообщений, которое выполняется поверх вызовов REST.
Мне неясно, нужно ли вам напрямую обращаться ко всем устройствам из Azure. Если вы не поняли ваш сценарий, вы хотите, чтобы роль Azure "подключалась" ко всем существующим устройствам, получала данные с них, выполняла некоторые вычисления в Azure, а затем отправляла данные обратно на устройство? Это кажется довольно трудным для выполнения и подверженным ошибкам, если ваши устройства недоступны - если ваши GPS-устройства зарегистрированы с рабочими ролями и могут быть доступны через общедоступный DNS, я думаю, вы могли бы сделать это. Но лично я склонялся бы к решению, которое только выталкивает данные с устройства в облако; так должно быть намного проще. Какие устройства вы имеете в виду? И что ты пытаешься сделать?