lectura o descarga de fichero local a vClient


([N1] alejandro-baenacustodes-vitae-com) #1

Hola,

necesitaría conocer vuestra opinión acerca de lo siguiente.

Tengo una previsión de 280 - 300 vClient conectados simultáneamente a vServer.

Cada equipo con vClient tiene un ancho de banda de bajada de 1’2Mbps - 1’5Mbps y uno de subida de 300Kbps - 400Kbps.

El vServer tiene un ancho de banda de bajada de 860Mbps - 1Gbps y uno de subida de 300Mbps.

En el equipo que está instalado vClient existe una carpeta con un conjunto(estimado 10-15) de archivos (*csv) numerados por su nombre. El tamaño estimado de cada uno de ellos 1’2 MB - 2 MB.

Tengo que incorporar a un par de tablas en vServer el contenido de estos ficheros.

Me planteo las siguientes opciones:

a) De manera automática transmitir los ficheros desde local vClient a una carpeta de datos compartida por vServer y ejecutar en el servidor el paso de la información desde los ficheros a las tablas.

b) De manera automática pasar el contenido de los ficheros locales de vClient a las tablas de vServer.

¿Tenéis experience de alguna implantación similar?. en cualquier caso, ¿cuál de ellas pensáis que puede ser mejor o se os ocurre otra posible solución?

Muchas gracias de antemano a todos.


([N1] alejandro-baenacustodes-vitae-com) #2

Disculpadme no hice el apunte que los datos han de ser tratados en tiempo real (24x7) y vClient está instalado en un terminal móvil de gama media con Android 4.x


([N1] Mario) #3

Buenos días, yo lo que haría es:

En local de cada vClient,

-Con vJavaScript, volcaría el fichero texto a una variable (es infinitamente más rápido que leer linea a linea. En ficheros grandes pasas de minutos a 2-3 segundos)

-Crear manejador de proceso

-Set contenido de la variable que contiene el fichero de texto al objeto

-Disparar el proceso en tercer plano, el cual realizará todas las altas, bajas, modificaciones que necesitaras.(Al hacer previamente set al objeto, el proceso en tercer plano, en este caso el servidor, tiene el contenido completo del fichero de texto)

 

 

Saludos


([N4] velavisual) #4

@alejandro

 

Al final del siguiente enlace tienes un ejemplo de creación y lectura de ficheros xt con vJavaScript

http://velneo.es/info_v7_712_es/velneo_vdevelop_v7/scripts/clases/vtextfile

 


([N1] Mario) #5

Para adelantarte trabajo…

 

 

// Para usar las funciones de la clase VFile primero hay que importarla

importClass( “VTextFile” );

importClass( “VFile” );

 

//Guardamos la senda del fichero

var senda = theRoot.varToString( “SENDA” );

 

// Se declara el objeto fichero

var fi = new VTextFile( senda );

//Se abre con codificación UTF-8. (Importante que el fichero esté en el mismo formato por acentos y ñ)

fi.setCodec(“UTF-8”);

 

// Se abre el fichero en modo de sólo lectura

if ( fi.open( VFile.OpenModeReadOnly ) )

{

// Leer todo el fichero

contenido = fi.readAll();

 

fi.close();

}

else {

// Si no ha sido posible abrir el fichero se muestra error

alert( "No se pudo abrir el fichero " + fi.fileName() + ", error " + fi.error(), “Error” );

}

 

theRoot.setVar( “RES”, contenido );

 

 

Saludos


([N1] alejandro-baenacustodes-vitae-com) #6

Muchas gracias por las aportaciones.

Voy a probar que tal me van.

Saludos