Получение открытых сокетов из окружения в Java

systemd поддерживает активация сокета, что означает, что сокеты будут переданы процессу демона как дескрипторы открытых файлов. Есть ли способ получить и использовать эти сокеты из Java?


person Andrew Aylett    schedule 27.11.2014    source источник
comment
Да. Как я сказал в комментариях к вашему последнему вопросу, используйте JNI и/или JNA.   -  person Elliott Frisch    schedule 27.11.2014


Ответы (1)


Да, это то, что System.inheritedChannel() это за.

На стороне systemd вы должны иметь возможность заставить свой служебный файл передавать сокет как fd 0 (что и ожидает Java), установив StandardInput=socket.

person user207421    schedule 27.11.2014
comment
Спасибо, это указатель, который мне нужен. На самом деле не пробовал, ум, но кажется правдоподобным :). - person Andrew Aylett; 27.11.2014