Пожалуйста, посмотрите на Розетки . Они используют модель TCP / IP прикладного уровня и обеспечивают надежную двустороннюю связь без лишних данных. Тем не менее, вам нужно будет разработать крошечный протокол для связи с вашими потребностями.
Скорее всего, этого будет достаточно для ваших нужд, но если вы решите использовать решение HTTP, имейте в виду, Websockets , который является интересным решением, уменьшит издержки протокола HTTP (но они выиграли Если это не устранить, служебные данные останутся на уровне 2-10 байт.) К сожалению, Java SE не имеет встроенной поддержки веб-сокетов, поэтому вам нужно будет использовать внешнюю библиотеку.
PS: оба варианта поддерживают шифрование по TLS, но я не упомянул об этом, поскольку он добавляет заметные издержки (по крайней мере, во время инициализации соединения)