В настоящее время я рассматриваю возможность использования Java в одном из моих проектов (по причинам, не связанным с сетью). На данный момент я использую C ++ и собственный протокол, построенный поверх UDP. Моя проблема здесь в том, что, хотя дополнительная эффективность хороша для отправки больших объемов данных в реальном времени, я бы предпочел иметь что-то вроде RPC для чисто «логических действий», таких как вход в систему. RPC в C ++ сложно сделать, так как сам стандарт C ++ не имеет понятия о сериализации.
В другом ответе я обнаружил RMI в Java, который, похоже, похож на RPC, но я не смог найти, насколько он эффективен / отзывчив, ни может ли он быть подключен к моему существующему сокету UDP, поскольку хочу, чтобы на моей серверной программе было открыто два порта.
В качестве альтернативы, поскольку я думаю, что в Java есть сериализация, я мог бы сам реализовать RPC, в зависимости от того, насколько проста десериализация произвольного потока объектов в Java. Тем не менее, если бы это потребовало от меня потратить дни на изучение основ Java, для меня это не вариант.