Да, это было бы отличным решением.
Однако следует внимательно рассмотреть вопрос о том, как следует обрабатывать параллельные запросы, когда два сервлета устанавливают соединение.Если библиотека / компьютер, возможно, было бы полезно использовать простой сокет, который не принимает другие соединения после установления соединения.
В java вы можете затем сериализовать доступ к библиотечному сокету, используя, например, BlockingQueue,так что у вас есть хорошо определенное поведение одновременного доступа.
Это позволит избежать проблем с повторением спуриуса.