Типичные схемы проектирования системы для серверных служб, таких как Uber, включают подключение к клиенту прокси-сервера и сервера веб-сокетов.
Мне любопытно, почему для этих современных веб-дизайнов учитываются только веб-сокеты (и длинный опрос). Если требуется служба обновления местоположения из мобильного приложения, которое постоянно отправляет обновления местоположения на сервер, почему бы людям не заблокировать, например, пользовательское соединение tcp или udp между клиентом iOS и сервером?
Tcp-соединение — это то, что веб-сокеты используют под капотом, но с необработанным TCP-соединением у вас есть гораздо более зрелые библиотеки, которые вы можете использовать (Netty, обход ядра, FPGA).
UDP кажется даже лучше, поскольку он не имеет состояния и может восстанавливаться при отключении. Если это односторонний поток обновлений местоположения, он, похоже, отлично подходит для этой цели.
Мысли?