RPC over serial port - адекватно ли? Как делают в Enterprise?

168
16 декабря 2019, 21:00

Насколько знаю, для разных языков программирования существует достаточно много всяких библиотечек и фреймворков, позволяющих реализовать RPC и JSON-RPC поверх HTTP/HTTPS, WebSocket, а может и простых TCP-сокетов тоже. Приходилось с подобным сталкиваться по работе на C++. В частности с Apache Thrift.

А как быть с COM-портами? Причем, если у тебя именно тот случай, когда для всех связываемых устройств пишешь ПО ты сам, поэтому тебе и решать, что там будет крутиться.

Язык - Java.

Область - я отношу к Enterprise - работать приходится со смарт-картами (и это не какой-нибудь СКУД, а именно те). Отчасти поэтому и язык Java, собственно.

Конечно, Java будет только на ПК, а вот связываемое устройство вряд ли ее поддерживает, да и RPC-библиотеку вряд ли потянет. Но под него можно создать "велосипед", совместимый с RPC-библиотекой, максимально упрощенный, а на ПК уж будет крутиться сама RPC-библиотека

Адекватно ли подобное?

Или для COM-порта адекватно только пилить свой протокол, разбираясь с нуля, какие таймауты ставить, как читать все байты, как оно должно реконнектиться при потере связи и т.д.?

Мне не хотелось бы пилить свой протокол, потому что у меня маловато опыта качественного программирования, а на Java и в Enterprise и с COM-портами его и вовсе нет. И если буду когда-нибудь устраиваться на работу по Java, то все эти "наработки" будут не очень-то оценены. А если у профессионалов еще и принято использовать какую-то готовую библиотеку, то на меня и вовсе будут смотреть косо. Я знаю, как это бывает на других платформах.

READ ALSO
Как пользоваться классом DerivatveStructure?

Как пользоваться классом DerivatveStructure?

Мне нужно задать полином 2-го порядка от 3 неизвестных, взять от него производную 1-го порядка, а так же найти значения этих функций на некотором...

155
Вложенный цикл for * for [закрыт]

Вложенный цикл for * for [закрыт]

Хотите улучшить этот вопрос? Update the question so it's on-topic for Stack Overflow на русском

159
Как сформатировать возврат метода в нужном стринговом формате Java?

Как сформатировать возврат метода в нужном стринговом формате Java?

Подскажите, как сделать return int массива в виде строки без [ , , , ] имею [100, 180, 90, 56, 65, 74, 68, 86, 99, 555555] нужно 100 180 90 56 65 74 68 86 99 555555

137
Как с помощью js вытащить id дива

Как с помощью js вытащить id дива

Есть несколько дивов(их количество зависит от длинны листа)

167