Rmiio

RMIIO es una biblioteca que lo hace lo más simple posible de transmitir grandes cantidades de datos utilizando el marco RMI.
Descargar ahora

Rmiio Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • GPL
  • Precio:
  • FREE
  • Nombre del editor:
  • Health Market Science
  • Sitio web del editor:

Rmiio Etiquetas


Rmiio Descripción

RMIIO es una biblioteca que la hace lo más simple posible para transmitir grandes cantidades de datos utilizando el marco RMI. RMIIO es una biblioteca que la hace lo más simple posible para transmitir grandes cantidades de datos utilizando el marco RMI (o cualquier marco de RPC para esa materia). ¿Quién necesita esto? Bueno, si alguna vez ha necesitado enviar un archivo desde un cliente RMI a un servidor RMI, ha enfrentado este problema. Y, si logró implementar una solución básica, probablemente lanzó un OutofMemoryError la primera vez que alguien intentó enviar un archivo de 2 GB. Debido al diseño de RMI, este problema común y engañosamente simple es realmente difícil de resolver de manera eficiente y robusta. El marco de RMI hace que sea muy fácil implementar la comunicación remota entre los programas Java. Se necesita un problema muy difícil (comunicación remota) y presenta una solución bastante fácil de usar. Sin embargo, el marco de RMI está diseñado en torno a enviando y recibiendo grupos de objetos que todos están disponibles de inmediato en la memoria. ¿Cómo envía un archivo del cliente al servidor sin soplar la memoria en el cliente o al servidor? Las herramientas y las API en el tiempo de ejecución de Java estándar no tienen soluciones listas para este problema, sin embargo, muchas personas lo han encontrado. Pase unos minutos buscando a través de los foros de Java de Sun y encontrará muchas preguntas y muy pocas sugerencias útiles (en serio, intente la búsqueda "RMI Sand File" para una lectura divertida). Entre las sugerencias: · Envíe un objeto de archivo · Envíe una URL · Envíe un ingreso · Envíe un byte [] La última es la primera sugerencia que se aproxima a la utilidad: resuelve el primer problema, pero no el segundo (para que las refutaciones más detalladas leen el Paquete Javadocs). Lo que realmente quiere hacer es transmitir datos del cliente al servidor (tiene una entrada de entrada, ¿no?) Usando un marco que realmente no expone un modelo de transmisión. La biblioteca RMIIO fue escrita para completar esa brecha que falta en el marco de RMI. Proporciona algunas clases muy potentes que permiten a un cliente transmitir datos al servidor utilizando solo unas pocas líneas adicionales de Code.RemotestreMexamplehow Simple? Bueno, ¿qué tal un código de ejemplo (nota, los ejemplos omitan el manejo de excepciones normales por el bien de la brevedad)? El ejemplo obvio, por supuesto, es un simple servicio de carga de archivos. Si el cliente y el servidor se estaban ejecutando en el mismo JVM, probablemente crearía una implementación de un servidor como este: // Un simple servicio local de cargas de archivo de carga de la clase pública localfileuploadservice {Public Void UploadFile (nombre de archivo de cadena, entrada de entrada de entrada) {// ... Copie Filedata al almacenamiento local ...}} Fácil, ¿verdad? Ahora, para convertir esto en una interfaz remota, el tipo de archivo Filedata debe cambiarse, ya que una entrada de entrada no funcionará de forma remota. Uso de RMIIO, esta implementación se convierte en: // un simple servicio de carga remota del servicio de carga de la clase pública remotaFileuploadService {Public Void UploadFile (Nombre de archivo de cadena, RemoteInputstream RemoteFiledata) {inputstream filedata = remoteInputstreamclient.wap (RemoteFiledata); // ... copiar filedata al almacenamiento local ...} Eso es, una línea adicional en el servidor para envolver el RMIIO RemoteInputStream como una entrada de entrada (Sí, se confunde que el servidor usa un método con "Cliente" en el nombre. , pero en esta situación, el servidor está actuando como el cliente con respecto al RemoteInputStream). Bien, por lo que los cambios del servidor son fáciles, ¿cómo crea el cliente un RemoteInputStream? // una llamada de un cliente a un servicio remoto FileUPLOADSERVICE REMOTEFILEUPLOADSERVICE SERVICE = ...; Inputstream filedata = ...; RemotoInputStreamServer RemoteFiledata = Nuevo SimplerEmoteInputStream (Filedata); service.uploadfile ("MyFile", RemoteFiledata.Export ()); y allí tiene un cliente de trabajo que puede transmitir un archivo a un servidor remoto (nuevamente, tenga en cuenta que la prueba / captura estándar / finalmente es necesaria en el código de producción real tiene sido omitido de estos ejemplos). Al envolver la entrada de entrada utilizando una de las implementaciones de RMIIO RemoteInputSertverVerver y exportándolo, los datos del archivo de origen se pueden transmitir al servidor utilizando una conexión de RMI ya establecida. Este ejemplo simplemente toca la potente funcionalidad proporcionada por la biblioteca RMIIO. Consulte la sección de características a continuación para obtener más detalles. La biblioteca RMIIO tiene licencia bajo la Licencia Pública General de GNU Menores y forma parte del Proyecto OpenHMS. Aquí hay algunas características clave de "RMIIO": · Corrientes de entrada y salida remotas · Implementación del iterador remoto para la transmisión de colecciones de objetos (SerialRemotEritatorerServer) · Compresión de GZIP opcional sobre el cable (flujos de entrada y salida) · Ganchos de monitoreo del progreso (RemoteStreammonitor) · Transmisión opcional de baja latencia (NODELAY) · Envíos serializables y envoltorios de extracción de salida para flujos de entrada y salida remotos · Integración de RPC enchufable que se puede usar para integrar con Frameworks que no sean RMI (consulte la sección RemoteStreamexporter a continuación para obtener más información) · Utilidades para facilitar la RMI robusta Requisitos de uso (RemotereTry): · Medio ambiente de tiempo de ejecución de Java, lo que es nuevo en esta versión: · Permite la reserialización de REMOTESTREAMSERVER.


Rmiio Software relacionado

Flexión

proporciona un marco de seguridad extensible para las aplicaciones Java. ...

124

Descargar

Hdf5

HDF5 es una suite de tecnología única que hace posible la gestión de colecciones de datos extremadamente grandes y complejas. ...

190

Descargar

Tk :: perlmethodlist

TK :: PERLMETHODLIST es un módulo PERL para consultar la tabla de símbolos para los métodos (subrutinas) definidos en una clase (paquete). ...

144

Descargar

Cheque de ISBN

La comprobación de ISBN es una clase de PHP simple destinada a verificar si un libro determinado es un código ISBN (número de libro estándar internacional) es válido. ...

124

Descargar