Jini


Jini ( / i n i / ), también llamado río Apache, es una arquitectura de red para la construcción de sistemas distribuidos en forma de servicios modulares cooperantes. [2] JavaSpaces es parte de Jini.

Desarrollado originalmente por Sun Microsystems , Jini fue lanzado bajo Apache License 2.0 . [3] La responsabilidad de Jini se ha transferido a Apache bajo el nombre de proyecto "River". [4]

Sun Microsystems presentó Jini en julio de 1998. [2] En noviembre de 1998, Sun anunció que había algunas empresas que apoyaban a Jini.

El equipo de Jini en Sun siempre ha dicho que Jini no es un acrónimo. Ken Arnold ha bromeado diciendo que significa "Jini no es iniciales", lo que lo convierte en un anti-acrónimo recursivo , [5] pero siempre ha sido solo Jini . La palabra 'jini' significa "el diablo" en suajili ; esto se toma prestado de la palabra árabe para un espíritu mitológico, que se originó en el latín genius , que es también el origen de la palabra inglesa " genie ".

La localización de servicios se realiza mediante un servicio de búsqueda. [6] Los servicios intentan ponerse en contacto con un servicio de búsqueda (LUS), ya sea mediante interacción unidifusión , cuando conoce la ubicación real del servicio de búsqueda, o mediante el descubrimiento dinámico de multidifusión . El servicio de búsqueda devuelve un objeto llamado registrador de servicios que los servicios pueden utilizar para registrarse y que los clientes puedan encontrarlos. Los clientes pueden utilizar el servicio de búsqueda para recuperar un objeto proxy del servicio; las llamadas al proxy traducen la llamada a una solicitud de servicio, realiza esta solicitud en el servicio y devuelve el resultado al cliente. Esta estrategia es más conveniente que la invocación del método remoto de Java , que requiere que el cliente conozca la ubicación del servicio remoto de antemano.

Jini utiliza un servicio de búsqueda para negociar la comunicación entre el cliente y el servicio. Este parece ser un modelo centralizado (aunque la comunicación entre el cliente y el servicio puede verse como descentralizada) que no se adapta bien a sistemas muy grandes. Sin embargo, el servicio de búsqueda se puede escalar horizontalmente ejecutando varias instancias que escuchan el mismo grupo de multidifusión. [ cita requerida ]