# Actualización de solución

**URL:** <https://foros.velneo.com/t/actualizacion-de-solucion/11098>\
**Category:** Velneo\
**Created:** [10 Agosto, 2022 20:44 UTC](https://foros.velneo.com/t/actualizacion-de-solucion/11098 "2022-08-10T20:44:12Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![marco\_rangel](https://avatars.discourse-cdn.com/v4/letter/m/8797f3/32.png) [@marco\_rangel](https://foros.velneo.com/u/marco_rangel)\
**Post date:** [10 Agosto, 2022 20:44 UTC](https://foros.velneo.com/t/actualizacion-de-solucion/11098/1 "2022-08-10T20:44:12Z")

</div>

Anteriormente tenía en un servidor una licencia de desarrollador con 20 conexiones de usuario y 2 de edición, por lo que la actualización de los desarrollos de mi máquina a este servidor los podía hacer usando el vDevelop con la opción de “Importar soluciones compartidas” y era muy sencillo así y siempre lo he hecho así desde que tomé el control de los desarrollos.  
Ahora, que tuve que instalar una licencia de productivo, ahora solo tengo licencias de conexión de usuario nada más, por lo que esta forma de actualizar ya no es posible. Como era la única manera en la que lo había hecho siempre, pues tuve que echarme un clavado y la alternativa (oficial) es mediante el vInstaller, pero la verdad siento que es mucha lata de esta manera.  
Alguna vez leí que alguien lo hacía con una “sincronización” de archivos.  
¿El actualizar una solución es tan fácil como copiar los archivos .vca y .vcd a la carpeta correspondiente? (tomando en cuenta que los ficheros adjuntos no se han modificado) y posteriormente reiniciar la solución.  
¿Estoy en lo correcto o no es tan sencillo como eso?

---

<div class="post-metadata">

**Author:** ![pacosatu](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/pacosatu/32/5131_2.png) [@pacosatu](https://foros.velneo.com/u/pacosatu)\
**Post date:** [10 Agosto, 2022 23:12 UTC](https://foros.velneo.com/t/actualizacion-de-solucion/11098/2 "2022-08-10T23:12:48Z")

</div>

Hola marco\_rangel.

Efectivamente, para actualizar una Solución en servidores de producción, es suficiente con copiar los nuevos archivos .vca y .vcd.

Y reiniciar la Solución, por supuesto.

Saludos  
Paco Satué

---

<div class="post-metadata">

**Author:** ![fernando2903](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/fernando2903/32/5478_2.png) [@fernando2903](https://foros.velneo.com/u/fernando2903)\
**Post date:** [11 Agosto, 2022 03:06 UTC](https://foros.velneo.com/t/actualizacion-de-solucion/11098/3 "2022-08-11T03:06:08Z")

</div>

Hola Marco,  
A mi me proporcionaron una licencia de desarrollador extra, cuando instalé el servidor de producción.  
Saludos  
Fernando

---

<div class="post-metadata">

**Author:** ![carlosan](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/carlosan/32/5706_2.png) [@carlosan](https://foros.velneo.com/u/carlosan)\
**Post date:** [11 Agosto, 2022 07:29 UTC](https://foros.velneo.com/t/actualizacion-de-solucion/11098/4 "2022-08-11T07:29:09Z")

</div>

Paco, hola. Entonces, para actualizar como dices que suficiente sería, corrígeme si no, por favor:

1 - Salir todos los usuarios de la aplicación y que no haya procesos ejecutándose.  
2 - Sin detener el servidor ni tocar instancias ni cosa por el estilo, copy - paste manual o subida automatizada de los archivos .vca y .vcd ( en ese supuesto de no haber implicados más ficheros, externos , adjuntos o lo que fuera que fuese )  
3 - Reiniciar la aplicación: supongo que entrando un usuario en ella o … ¿ desde vDevelop ?

---

<div class="post-metadata">

**Author:** ![pacosatu](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/pacosatu/32/5131_2.png) [@pacosatu](https://foros.velneo.com/u/pacosatu)\
**Post date:** [11 Agosto, 2022 10:48 UTC](https://foros.velneo.com/t/actualizacion-de-solucion/11098/5 "2022-08-11T10:48:56Z")

</div>

Hola carlosan.

Repasemos algunos conceptos básicos para entender Velneo 7.

- Velneo **vServer** es un **servidor de aplicaciones** al que se conectan clientes **vClient** a través de redes TCP-IP usando el protocolo propietario **VATP**. Por lo tanto, es una arquitectura cliente/servidor donde el **cliente** necesita un procedimiento de **conexión/desconexión** a las aplicaciones.
- Cuando se [arranca vServer](https://doc.velneo.com/velneo-vserver/iniciar-velneo-vserver), todas las **aplicaciones** (Soluciones) se cargan en la **memoria** del servidor. Es lo que conocemos como [reiniciar](https://doc.velneo.com/velneo-vadmin/gestion-de-aplicaciones/instancias#reiniciar-una-instancia) las [Instancias de Datos y Aplicación](https://doc.velneo.com/velneo-vadmin/gestion-de-aplicaciones/instancias) desde los archivos **.vcd** y **.vca**.  
Los archivos **.vcd** y **.vca** simplemente se **leen** para poder **instanciar** las Instancias en memoria, no se bloquean, por lo que podemos **sobrescribirlos** en cualquier momento.
- Los clientes **vClient** podrán conectarse a aquellas **Instancias** que se hayan **inicializado** correctamente y no estén “pausadas” o “detenidas”. Para la ejecución del **Interface** y los **procesos de 1P** el cliente descarga los archivos **.vcd** y **.vca** en la [caché del cliente](https://doc.velneo.com/velneo-vclient/funcionalidades-especificas/cache-local).
- Cuando se **reinicia** una **Solución** , todas las Instancias de dicha Solución se **borran** de memoria y se vuelven a **instanciar** leyendo de nuevo los archivos **.vcd** y **.vca**.

> Para poder **reiniciar** una Solución, **no puede haber clientes conectados** porque hay que **borrar** la Instancia de la memoria del servidor y cargarla de nuevo.

> Los archivos .vcd y .vca **se leen solo cuando la Instancia se reinicia** , por lo tanto, ese es el momento en el que los clientes dispondrán de la **nueva versión** de la Solución.

- Una vez **reiniciada** la Solución, los clientes se conectarán a la nueva **Instancia** y descargarán los nuevos archivos **.vcd** y **.vca** en la **caché** del cliente.

> En producción, las Soluciones se **reinician** solo desde **vAdmin**. Los nuevos archivos **.vcd** y **.vca** se copian al servidor **vServer** en la carpeta de las Soluciones (/Velneo/cajas). Lo habitual es usar un cliente FTP como **[FileZilla](https://filezilla-project.org/)**.

Espero que con esto ya estará más claro el proceso de actualización de aplicaciones.

Saludos  
Paco Satué

---

<div class="post-metadata">

**Author:** ![carlosan](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/carlosan/32/5706_2.png) [@carlosan](https://foros.velneo.com/u/carlosan)\
**Post date:** [11 Agosto, 2022 11:19 UTC](https://foros.velneo.com/t/actualizacion-de-solucion/11098/6 "2022-08-11T11:19:28Z")

</div>

Gracias Paco. Por supuesto.  
A veces la rutina diaria y las prisas llevan a dejar de leer / aprender / profundizar en las cuestiones de Velneo. Incluso las básicas.  
Yo actualizaba hasta ahora creando un instalable nuevo de la solución cada vez.  
Luego iba al servidor en la nube de Velneo en cuestión y eliminaba primero las instancias de esta aplicación para luego borrar la solución también. Después importaba la nueva solución.  
Nunca usé lo de reiniciar una solución, por eso pensaba que se actualizaba al entrar con vClient y porque al lanzar la ejecución desde vDevelop se actualiza automático, cosa que yo relacionaba con vClient aunque no era el caso.  
En fin. Gracias por tomarte las molestias y gastar paciencia hasta quedarte en la reserva.

---

<div class="post-metadata">

**Author:** ![marco\_rangel](https://avatars.discourse-cdn.com/v4/letter/m/8797f3/32.png) [@marco\_rangel](https://foros.velneo.com/u/marco_rangel)\
**Post date:** [11 Agosto, 2022 14:07 UTC](https://foros.velneo.com/t/actualizacion-de-solucion/11098/7 "2022-08-11T14:07:09Z")

</div>

Paco, muchas gracias por tu puntual explicación y a carlosan por unirse a la duda. Ahora creo que nos ha quedado más que claro que es lo que podemos hacer para automatizar de diferentes maneras nuestras actividades.  
Paco, carlosan un abrazo.
