Page 1 of 2

DONDE EJECUTAR LA APLICACION

Posted: Fri Jul 17, 2015 4:46 am
by LuisPonce
Hola,

Por costumbre las aplicaciones las ejecuto en la maquina local, de mi red local, los datos .DBF los leo mediante la unidad compartida ubicada en el servidor.

Como todos, deseamos que nuestras aplicaciones sean veloces, seria conveniente ejecutar la aplicacion desde mi pc??, directamente en el servidor, es decir;
desde mi pc, ubico la carpeta compartida en el servidor, Z:\SISTEMA\VENTAS.EXE y ejecuto mi aplicacion ???

De la primera forma, estoy experimentando problemas de velocidad de acceso a los datos, 5 terminales y un server.

Alguien tiene informacion al respecto, o mejor forma de hacerlo, gracias

Re: DONDE EJECUTAR LA APLICACION

Posted: Fri Jul 17, 2015 12:58 pm
by acuellar
Luis

Yo para evitar el mapeo de unidad en el server, habilito la vía con un usuario administrador usando el comando NET USE
Con las unidades mapeadas se corre el riego de que los usuarios borren la información.
Ejecuto el exe desde el PC del usuario.

Code: Select all


WinExec("Net use \\SERVIDOR\D$\SISTEMA contraseña /user:usuario /persistent:yes",0) 

SET DEFAULT TO \\SERVIDOR\D$\SISTEMA

 
Saludos,

Adhemar

Re: DONDE EJECUTAR LA APLICACION

Posted: Fri Jul 17, 2015 3:11 pm
by LuisPonce
ACuellar

Gracias por responder

Entiendo que es un comando u otro... y al inicio de la aplicación, entonces también opinas
que la mejor forma de hacerlo es ejecutando la aplicación desde la PC local.

Un abrazo desde Peru

Re: DONDE EJECUTAR LA APLICACION

Posted: Fri Jul 17, 2015 4:34 pm
by acuellar
Si es mejor ejecutarlo desde la PC del usuario, aunque la velocidad sea casi lo mismo.

Saludos,

Adhemar

Re: DONDE EJECUTAR LA APLICACION

Posted: Fri Jul 17, 2015 6:01 pm
by Armando
Amigos:

Meto mi chuchara al puchero, porque me interesa el tema de la velocidad de proceso,
Ademar, entonces debo entender que la velocidad de proceso sería la misma, en la
forma como lo hace Luis y en la forma que tu sugieres?, la ventaja de tu sugerencia
es que el usuario no puede borrar información, correcto?

Saludos

Re: DONDE EJECUTAR LA APLICACION

Posted: Fri Jul 17, 2015 6:25 pm
by acuellar
Si,

Así es.

Saludos,

Adhemar

Re: DONDE EJECUTAR LA APLICACION

Posted: Fri Jul 17, 2015 8:54 pm
by ltorres
Aplicación en PC
Datos en RED
Nuevo para mi esto del uso del NET USE par esto, normalmente lo uso para el LPT1:
Saludos

Luis

Re: DONDE EJECUTAR LA APLICACION

Posted: Sat Jul 18, 2015 4:28 pm
by MarioG
Gente;
mi opinión es la misma que la de Luis

Si ponemos ejecutable y datos en el servidor; y lo ejecutamos, a traves de la red, seguramente la respuesta será mas lenta ya que para abrir el programa en lugar de leer desde el disco local, lee a traves del cable o aire (mas lento aun?).
Cada vez que entramos en una funcion que abre un Dlg con su "dibujo" (o sea la complejidad que contenga); tooooodo viajará por la red antes de reproducirse.
De manera que con la aplicación en el equipo local y los datos en un Servidor, solo viajan datos que, si no son imágenes, será sensiblemente mas ligero que el caso en discusión.
No hice pruebas... lo leí hace mucho en el foro y la lógica me dice que es razonabe :)

Re: DONDE EJECUTAR LA APLICACION

Posted: Sat Jul 18, 2015 6:21 pm
by Armando
Mario y Ademar:

En principio tienen razón en cuanto a la seguridad, aunque otro lado cuando se trate
de actualizar a una nueva versión habrá que hacerlo en todas y cada una de las PC
terminales.

Voy a buscar un ejemplo usando NET USE para hacer pruebas y comentar el resultado.

Saludos

Re: DONDE EJECUTAR LA APLICACION

Posted: Sat Jul 18, 2015 7:23 pm
by Carles
Hi,

App local
Datos servidor/inet

Por ejemplo.... office lo instalamos mejor en unidad de red y mapeamos, u obtenemos mejor rendimiento en local ?

Re: DONDE EJECUTAR LA APLICACION

Posted: Sat Jul 18, 2015 8:19 pm
by MarioG
Armando;
Aclarando que no es por defender postura.
Hoy Instalar una actualización en varIas PC no es contratiempo, salvo que no haya Internet donde estan las PCs.
Opción 1. Instalar OneDrive o, Google Drive o, Dropbox (todos gratis). Subís ahi tu acutalización y en segundos los usuarios pueden actualizar su app con aviso mediante correo o, si lo queres mas profesional con chequeo de la carpeta\tu app.
Opcion 2. Instalás Teamviewer (tambien gratis) o, Escritorio Remoto; te conectás con tu clietne y le tranasferís la actualización.
Con estos programas ya ni se necesita ir a lo del cliente

que siga el debate! :)

Re: DONDE EJECUTAR LA APLICACION

Posted: Sun Jul 19, 2015 1:13 am
by Armando
Mario:

Entiendo que no es cosa de polemizar, simplemente estamos dando opiniones y experiencias.

Actualmente utilizo tu segunda opción y funciona de 100 para pocas terminales, pero cuando
hablamos arriba de 10 terminales la cosa empieza a tomar color de hormiga.

Ojala que algunos foreros opinen también.

Saludos

Re: DONDE EJECUTAR LA APLICACION

Posted: Sun Jul 19, 2015 1:25 am
by LuisPonce
El debate se torno interesante; como sabemos, cuando leemos nuestras DBFs desde la PC local, jalas la tabla completa del server, entonces si tienes una tabla considerable (mas de 10 megas) consumes tiempo.

Tengo la duda, si ejecutando la aplicación en el server desde la PC local, al leer una tabla se invertía el mismo tiempo, la intención como todos queremos es reducir el tiempo de espera.

Por otro lado, me agrada la solución de Adhemar que incide en la seguridad de la data, totalmente de acuerdo.

Saludos

Re: DONDE EJECUTAR LA APLICACION

Posted: Sun Jul 19, 2015 8:01 am
by Carles
Luis
LuisPonce wrote:Tengo la duda, si ejecutando la aplicación en el server desde la PC local, al leer una tabla se invertía el mismo tiempo, la intención como todos queremos es reducir el tiempo de espera.
Cuando ejecutamos una aplicacion que esta instalada en una unidad de red, no significa que se ejecute en el servidor. Esta se carga en la memoria de tu maquina local y se ejecuta. Nada q ver si ejecutas la aplicacion con un terminal server, maq. Virtual,... pero no es el caso. La manera mas rapida de ejecutar es tenerla instalada en local
LuisPonce wrote:Por otro lado, me agrada la solución de Adhemar que incide en la seguridad de la data, totalmente de acuerdo.
Si se practica el compartir datos en una red, siempre estaras en un sistema "altamente" expuesto a un desastre en cuanto seguridad. Cualquiera puede eliminar ficheros e incluso sustituirlos por otros :shock: ... Hablamos siempre del sistema expuesto en este tip, nada q ver con c/s ads que es otro sistema, pero con un sistema de seguridad, rendimiento y estabilidad brutal.

Hace muchos años era la practica habitual compartir dbfs en una unidad de red, pero hoy en dia teneis a disposicion muchas tecnicas mas potentes y consistentes con arquitectura cliente/servidor.

En cuanto al tema actualizaciones...muchas soluciones y todas buenas dependiendo de nuestro escenario....

Re: DONDE EJECUTAR LA APLICACION

Posted: Mon Jul 20, 2015 9:47 pm
by ACC69
acuellar wrote:Luis

Yo para evitar el mapeo de unidad en el server, habilito la vía con un usuario administrador usando el comando NET USE
Con las unidades mapeadas se corre el riego de que los usuarios borren la información.
Ejecuto el exe desde el PC del usuario.

Code: Select all


WinExec("Net use \\SERVIDOR\D$\SISTEMA contraseña /user:usuario /persistent:yes",0) 

SET DEFAULT TO \\SERVIDOR\D$\SISTEMA

 
Saludos,

Adhemar

Hola buenas tardes ,es muy interesante lo que mencionan respecto a ejecutar aplicacion en redes.
Actualemente tengo una aplicacion trabajando en red,donde mas de 6 usuarios usan la aplicacion compartida y esta mapeada en la unidad j:\ProvIVA2.exe y en las estaciones de trabajo,creo el acceso directo para que ejecute la aplicacion en la carpeta mapeada .
Y leo que mencionan que se corre el riesgo por error de eliminar bases de datos,eso para mi ha sido estresante que de un momento a otro puedan eliminarlo,y cada semana hago el respaldo de las bases de datos de cada empresa.

Ahora quiero cambiarlo a modo de no mapear la unidad y accesen directo a la carpeta compartida sin mapear.

1.- Que procedimientos y/o parametros me sugieren a cambiar mi sistema ...desde mi aplicacion como ejecutar o leer la aplicacion en red desde otro equipo o ubicar la ruta de las bases de datos de esta manera como ejemplo \\sphmar\Empresas
Ya que ahora quiero cambiarlo de esta manera \\sphmar\Empresas,que en el servidor este las bases de datos y el programa ejecutable

2.- Que necesito instalar en cada maquina local del usuario que ejecute la aplicacion en red para que ubique la ruta \\sphmar\Empresas

3.- Como mi sistema debera instalarse si es en red o a modo local o que detecte que es a modo local o servidor de red \\sphmar\Empresas

Espero no ser muy confuso mis dudas y preguntas que escribi al respecto,pero si requiero la ayuda de todos que me puedan echar la mano o algun ejemplo sencillo y/o tecnica a ejecutar desde mi aplicacion.
Ya que lei ,lo que ustedes escribieron, pero no me queda claro aun ..de los parametros que ubique dentro de mi aplicacion la ruta \\sphmar\Empresas o desde una base de datos que grabe la ruta a leer las bases de datos.

Esperando contar con su valioso apoyo y experiencias, quedo a la espera de su respuesta.

Saludos !

Atte: Adrian C. C.
acc69@hotmail.com