2010-11-04 21 views
13

Veo estos hilos UNIX socket implementation for Java? y http://forums.sun.com/thread.jspa?threadID=713266.Socket de dominio UNIX en Java

El segundo enlace dice que Java ya es compatible con el socket de dominio UNIX. Si eso es cierto, ¿qué clase debo implementar desde Java?

Desde el primer enlace, dice que Java no es compatible con el socket de dominio UNIX. Si necesita un socket de dominio UNIX, debe usar una biblioteca de terceros.

Entonces, ¿cuál es?

+4

El segundo enlace (forums.sun.com) se rompe y parece conducir a ninguna parte alguna página principal de Oracle. No se encontró archive.org, por cierto, lamentablemente. – Tino

Respuesta

13

Java no puede crear ni acceder a los Sockets de dominio Unix sin utilizar una biblioteca de terceros (nativa). El último comentario en el segundo enlace arriba menciona esto.

El primer enlace contiene información buena (y correcta) sobre ella.

16

Usted podría utilizar junixsocket: https://github.com/kohlschutter/junixsocket

Proporciona soporte AF-UNIX a través de una biblioteca JNI, utilizando la API de Java Zócalo. Incluso permite conectarse a MySQL desde Java (Connector/J) a través de sockets Unix.

+2

A noviembre de 2015, el proyecto * junixsocket * reside en https://github.com/kohlschutter/junixsocket – VirtualMichael

+3

Tenga cuidado, solo es compatible con conectores Unix en modo STREAM. Compruebe lo que su servidor abre, con 'netstat -ux'. Ver también [Diferencia entre sockets STREAM de dominio UNIX y DATAGRAM] (http://stackoverflow.com/questions/13953912). – Florian

3

Netty también soporta desde la versión 4.0.26: https://github.com/netty/netty/pull/3344

+1

Tenga cuidado, solo admite sockets Unix en modo STREAM. Compruebe lo que su servidor abre, con 'netstat -ux'. Ver también [Diferencia entre sockets STREAM de dominio UNIX y DATAGRAM] (http://stackoverflow.com/questions/13953912). – Florian

Cuestiones relacionadas