Запустить две программы и обработать ввод-вывод с помощью Java-сервера - PullRequest
0 голосов
/ 31 января 2019

У меня есть две программы (язык не имеет значения, скажем, C ++), и мне нужно запустить и управлять связью между ними (с помощью сервера, написанного на Java), эта связь работает следующим образом:

На каждом шаге программа # 1 получает входные данные от программы # 2, и после некоторой обработки она создает выходные данные и передает их программе # 2, поскольку ее входные данные и программа # 2 делают то же самое.После нескольких шагов (может быть около 10 шагов) это общение будет законченомежду этими шагами нет задержки, и они работают немедленно.

Я провел их через java.lang.Process и для обработки ввода и вывода я использую InputStream и OutputStream.Проблема в том, что я не могу контролировать поведение этих программ, поэтому они могут повредить мой сервер , преднамеренно или непреднамеренно, например, израсходовать всю память или разбить весь сервер.

Как я могусправиться с этим поведением и защитить мой сервер от сбоев?Есть ли лучший способ сделать это?

...