COMET entra en explotación por primera vez en 1998, pasando a centralizar todas las operaciones de Transportes Carreras, SA a nivel europeo y en tiempo real en un único centro de datos ubicado en Zaragoza (España). Esta primera versión, ya desaparecida, está desarrollada en 4GL y corre bajo sistemas AIX de IBM.
En 2002 y empujados por el avance del transporte multimodal se cuestionan las limitaciones del entorno de caracteres, lo que nos lleva a buscar otras opciones tecnológicas. La pujanza de Java (recien aparecida la versión 1.3,) los sistemas abiertos y la tradición Unix que la empresa mantiene desde los años 80, nos ayuda a dibujar la estrategia que se seguirá en los próximos años y que -de hecho- mantenemos y defendemos hoy en día.
Fruto de un fuerte espíritu innovador respaldado por la Dirección de la compañía entra en explotación, a principios de 2004, la primera versión de COMET en entorno web. Esta versión está basada en la primera especificación de EJB, servlets y JSP y corre en servidores de aplicaciones Orion. Esta versión resulta ser un fracaso en cuanto a las expectativas de rendimiento así que toca rectificar y buscar una solución que pasa por la eliminación de toda la capa de EJB y la refactorización de una buena parte de la lógica de negocio para pasar a servidores Tomcat. Es un contratiempo, pero no nos vamos a dar por vencidos fácilmente.
En verano de 2004 ya está en producción una nueva versión corriendo sobre un grupo de servidores Tomcat 4.1.29 y con Debian Woody como sistema de base. Esta arquitectura durará hasta finales de 2008, terminando con Tomcat 5.5 y Debian Etch. Como curiosidad el primer conector AJP era bastante problemático, así que acabamos programando nuestro propio balanceador de carga en PHP4 analizando para cada nueva sesión las estadísticas de servicio de cada servidor Tomcat.
Así se ve esta primera versión, luciendo vistosos colores como es habitual en todos los diseños web de la época, aunque queda un poco distorsionada la presentación en un Iceweasel (Firefox). En estos tiempos programamos pensando exclusivamente en IE4.
Esta versión da un rendimiento realmente impresionante con sus cuatro nodos PIV con 2GB de RAM cada uno.
Prueba superada, esto funciona bien y no cabe la vuelta atrás, así que el siguiente paso es hacerlo crecer mientras aumenta el mantenimiento del sistema. Cualquiera que haya programado a base de servlets recordará lo ingobernable que se puede volver una aplicación con el paso del tiempo, así que nuestro siguiente reto está claro: buscar un patrón de desarrollo que nos permita "limpiar" las interioridades del sistema y unificar el criterio de programación.
Una vez más la solución viene de la mano de la Apache Software Foundation, que ya nos ha salvado con su servidor Tomcat: la solución se llama Struts en la versión 1.2.8 y es nuestro salto al patrón MVC.
Estamos en 2005 y optimizamos todas las pantallas para 1024x768, toda una apuesta tecnológica.
(continuará...)
Así se ve esta primera versión, luciendo vistosos colores como es habitual en todos los diseños web de la época, aunque queda un poco distorsionada la presentación en un Iceweasel (Firefox). En estos tiempos programamos pensando exclusivamente en IE4.
Esta versión da un rendimiento realmente impresionante con sus cuatro nodos PIV con 2GB de RAM cada uno.
Prueba superada, esto funciona bien y no cabe la vuelta atrás, así que el siguiente paso es hacerlo crecer mientras aumenta el mantenimiento del sistema. Cualquiera que haya programado a base de servlets recordará lo ingobernable que se puede volver una aplicación con el paso del tiempo, así que nuestro siguiente reto está claro: buscar un patrón de desarrollo que nos permita "limpiar" las interioridades del sistema y unificar el criterio de programación.
Una vez más la solución viene de la mano de la Apache Software Foundation, que ya nos ha salvado con su servidor Tomcat: la solución se llama Struts en la versión 1.2.8 y es nuestro salto al patrón MVC.
Estamos en 2005 y optimizamos todas las pantallas para 1024x768, toda una apuesta tecnológica.
(continuará...)
