Web de Velneo V7

Instancias de aplicaciones

Publicado: 29.11.06 (00:00 UTC)

Con V7 nacen nuevos conceptos que nos ayudarán a gestionar mejor nuestras aplicaciones tanto desde el punto de vista de desarrollo como desde el punto de vista de ejecución.

En las versiones 6.x para la ejecución de una aplicación se necesitaba un MAP ( o vam ), los datos de las aplicaciones y otra serie de ficheros auxiliares.

Si necesitábamos poner 3 veces la misma aplicación con distintos datos debíamos cargar 3 Mapas iguales en distintos directorios con sus datos de aplicación.

Del mismo modo anteriormente no era sencillo separar las tablas de una aplicación en distintos directorios ( Redirección de tablas )

Para resolver estas problemáticas y poder dar más flexibilidad en la implantación de las aplicaciones finales nacen las instancias.

Las instancias están únicamente referidas a la área de ejecución de aplicaciones con lo que el desarrollador no tiene que pensar en ellas durante la programación.

Cuando desde el vAdmin se añade una aplicación ( Conjunto de cajas de datos y cajas de objetos ), lo primero que solicita es la ubicación de la primera instancia de esa aplicación. En esa ubicación se situarán todas las tablas de todas las cajas de datos de dicha aplicación.

A partir de este momento podemos crear nuevas instancias de esta aplicación simplemente marcándole los nuevos directorios donde se situarán dichas instancias. El usuario podrá trabajar con cualquiera de las instancias que le aparecerán como aplicaciones independientes al conectarse desde su vClient.

Dándole una vuelta de tuerca y para los implantadores/desarrolladores más experimentados desde la ventana de instancias se puede cambiar la ubicación de algunas tablas de una instancia, pudiendo hacer que dos instancias de una misma aplicación compartan datos. La asignación de directorios de tablas se realiza a nivel de cada una de las cajas de datos.

Las utilidades que surgen con las instancias son múltiples:

  • Una aplicación con 1000 instancias en la que el servidor solo trabaja con una única aplicación pero gestiona cientos de usuarios entrando en instancias de datos totalmente distintas. Al solo cargar una aplicación el servidor se inicia más rápido y consume mucho menos recursos de sistema.
  • Aplicaciones totalmente distintas compartiendo las tablas de una caja de datos común.
  • Archivar tablas de aplicaciones por ejercicio o cualquier otro dato. Podemos tener aplicaciones que comparten los datos del trabajo diario y en instancias separadas tener los ejercicios anteriores.

Las instancias ayudan a organizarnos la instalación de nuestras aplicaciones y nos da una mayor flexibilidad en la implantación.

Una de nuestras labores más importantes es que las instancias no compliquen la vida a los desarrolladores que no necesitan tanta flexibilidad.

 

Etiquetas: aplicacion, , ,

Arriba

Comentarios

  • Publicado: 30.11.06 (05:22 UTC)
    Por adelo #

    Muy interesante de cara a multiejercicio y multiempresa (entre otras).

  • Publicado: 30.11.06 (09:09 UTC)
    Por eic #

    Tiene muy buena pinta. Las posibilidades que se abren son múltiples, aunque habrá que ver cómo se gestionan las instancias en la práctica. Imagino que la unidad mínima para redirigir directorios será una caja…

    Saludos,

    Fran Varona

  • Publicado: 30.11.06 (09:25 UTC)
    Por fjpnovo #

    Buenos dias:

    Muy interesante. Las posibilidades que se abren son muchas… hay que cambiar la forma de pensar para afrontar los proyectos desde un nuevo punto de vista.

    Muy importante me parece la última frase: Si la cosa se complica demasiado habrá gente que no sea capaz de manejarlo bien.

  • Publicado: 30.11.06 (09:33 UTC)
    Por daniel #

    El articulo como introducion esta bien, con las opciones minimas que se me ocurren nos va a dar facilidad en las instalaciones, pero me provoca bastantes dudas a la hora de valorar su potencia.

    1- Segun el Dibujo veo que se dice el sitio de la caja al crear la instancia ¿Se va a poder crear instancias en servidores distintos?

    2- Hay aplicaciones que tiene que ir con datos independientes y a la vez poner juntar la informacion. ¿Se va a poder realizar comunicaciones entre las distintas instancias?

  • Publicado: 30.11.06 (11:27 UTC)
    Por comercial #

    Muy interesante y muy util

    Nacho

  • Publicado: 30.11.06 (16:13 UTC)
    Por gcarazo #

    Sería interesante para aplicaciones multiempresa poder crear instancias en tiempo de ejecución en vase a un modelo previamente planificado. No me ha quedado claro si esta posibilidad se contempla

  • Publicado: 01.12.06 (11:29 UTC)
    Por juanjo #

    De saber esto antes, nos hubieramos evitado pensar en aplicaciones multiempresa con la v6, y centrarnos, en el conjunto del proyecto.

    Es un articulo interesante, pero como dice Gcarazo, se podrian crear instancias en tiempo de ejecucion. ¿podria compartirse una caja por diferentes instancias de una misma aplicacion y por diferentes aplicaciones a la vez?

    Juanjo

  • Publicado: 01.12.06 (17:34 UTC)
    Por juanjo #

    Una cuestion mas, puestos a dar funcionalidad a las INSTANCIAS con ejemplos como MultiEmpresa, MultiEjercicio, MultiUso … todo lo que sea Multi sera bueno, pero sera posible lanzar TUBOS entre INSTANCIAS o mandar datos de una instancia a otra, o desde una Instancia, hacer una busqueda en datos de otra, espero que si, pero queria aclarar esta duda.

    Juanjo

  • Publicado: 01.12.06 (18:22 UTC)
    Por ramon.tejada #
  • Publicado: 04.12.06 (10:38 UTC)
    Por jcmar #

    Muy interesante, pero creo que esto se esta multi-complicando, viendo los comentarios, aunque creo que es una cuestión de perspectiva.

    - No veo la necesidad de lanzar Tubos entre instancias, me resulta mas facil pensar en procesos remotos para comunicar aplicaciones, sean instanciadas o no.

    - Desde API VCL, entiendo que se pueden crear todas las instancias que se necesite

    - Me interesa más que los datos puedan ser utilizados por diferentes aplicaciones, tengan estas instancias o no.

    Esto ya funciona asi en el IIS de windows 2003, y con ello se consigue minimizar el uso de recursos (se intancia solo un ejecutable), y no veo por tanto ventajas en el campo de la progamación y diseño como se comenta sobre multiempresa, multiejercicio; para eso programar eso está API VCL.

  • Publicado: 04.12.06 (19:05 UTC)
    Por davidgu #

    Esta claro que este tema de las instancias genera interesantes preguntas.

    Intentaré dar respuesta a algunas…

    ¿Se pueden crear instancias en tiempo de ejecución?

    Si, con las funciones del VCL ya sea desde Velneo o desde fuera se podrá dar de alta instancias.

    ¿Se puede hacer comunicaciones entre instancias?

    En el concepto de instancia que vemos aquí, las instancias son aplicaciones separadas ( Aunque puedan compartir datos ). Que tengamos instancias no implica que tengamos una comunicación directa entre ellas.

    ¿Distintas aplicaciones o instancias podrán compartir datos?

    Si, se podrá ubicar los datos de una aplicación o instancia en distintos directorios e incluso siendo compartidos con otras instancias ( de la misma o distinta aplicación )

    ¿Se va a poder crear instancias en servidores distintos?

    Según se entienda. El VCL permite lanzar comandos en servidores distintos. Pero cada servidor necesita conocer todas las cajas para poder crear una instancia. Los datos de una misma instancia deben estar gestionados por un mismo servidor.

    Espero haber podido aclarar un poco más la información del artículo.

    Si surgen más cuestiones intentaremos ir contestando en esta página.

    Un saludo

  • Publicado: 05.12.06 (08:54 UTC)
    Por daniel #

    Con estas aclaraciones esta entendido.

    Debido a que ya va saliendo varias veces, creo que seria interesante un articulo más completo sobre el VCL.

  • Publicado: 11.12.06 (12:51 UTC)
    Por info #

    ¿Se puede crear una Tabla que tenga distintas instancias? . Por ejemplo en función de Ejercicio, es decir una Tabla de Facturas que en función el campo ejercicio, se grabe en una instancia u en otra. Como haciamos en Cobol, el nombre del fichero lo definimos con una varible y así teníamos FACT0106.DAT y FAC0107.DAT para las facturas de la empresa 1 y ejercicios 2006 y 2007.

  • Publicado: 24.07.10 (14:05 UTC)
    Por Aquiles #

    Lo que yo necesito es que cada ejecucion del vrunner pueda independientemente elegir la instancia que desee en tiempo de ejecucion, cambiarse a otra, regresar a la misma, etc.
    Como dice info# en COBOL yo tengo una sola aplicacion con tablas de empresas y usuarios, que segun la empresa y el ejercicio fiscal asigna la senda o carpeta con la cual trabajara la aplicacion.
    catpetas        subcarpetas
    aplicacion      emp01         ano2009
                                          ano2010
                        emp02        ano2009
                                          ano2010
    asi por ejemplo si necesito informacion desde el ejercicio 2009 al 2010 me cambio de senda, abro las tablas las leo, pongo el resultado en tablas temporales, abro la otra senda, leo y añado al temporal lo demas y trabajo terminado.
     
     

  • Publicado: 26.07.10 (09:53 UTC)
    Por [N4] mperez.velneo #

    Hola Aquiles.

    Lo que comentas de separar los datos por años fiscales es algo que todos hemos hecho en nuestro software de gestión. Yo mismo lo tenía así en el antiguo mainframe de la empresa en que tarbajaba.

    Teniamos, por ejemplo una tabla de datos de contratos, en cdonde había unos dos millones de registros y todos los años, los contratos liquidados, los pasabamos a unas carpetas historicas que almacenaban la información por años, para que el fichero no creciera tanto

    Sin embargo sin entrar en las necesidades que tendrías para realizar algo similar con las instancias, lo que yo a nivel particular te aconsejo, es que en Velneo no separes la información por años fiscales.

    Es mucho más comodo tener toda la información en linea a la hora de realizar comparativas y cualquier tipo de estadistica, lo único que deberás hacer es tener las facturas, perdidos, alabaranes, etc indexados por año.

    Esto y a mi me pasaba en antiguas bases de datos tenía y tiene una pega y es que al auentar el volumen, la aplicación se hacía mas lenta, pero en Velneo te aseguro que si tienes como era mi caso 2.000.000 de pedidos, facturas y tan solo 5000 son del año con el que estás trabajando, da igual, los tiempos de respuesta serán inmediatos. Cruzar cualquier busqueda por un indice más que sea el año, no va a relentizxar un ápice tu aplicación.

    Se que en principio puedes ser reacio, pero con probarlo, te convencerás

Deja un comentario


© 2012, Velneo S.A. Todos los derechos reservados      Contacto | Privacidad - Legal
Life is Soft