InfoJobs se ha convertido en el portal de empleo on line de referencia. Según datos de la consultora Salvetti&Llombart, 8 de cada 10 grandes empresas españolas utilizan Infojobs y 7 de cada 10 ofertas de empleo publicadas en Internet se concentran en esta plataforma, que a lo largo de 2011 intermedió la firma de un total de 330.925 contratos.
Con 5,7 millones de usuarios únicos, 15,6 millones de visitas y 202 millones de páginas vistas en febrero de 2012, disponibilidad y rendimiento ya no son conceptos fundamentales sino inherentes a la plataforma Infojobs -tanto en España como en Italia y Portugal-, así como a sus sitios asociados, ya sea el portal de formación o su proyecto de comunidades.
Aunque InfoJobs ha sido consciente desde sus orígenes de la importancia del ‘uptime’, fue a raíz de una caída productiva, que tuvo lugar el 28 de febrero de 2008 y que se prolongó varias horas, cuando la organización verdaderamente interiorizó su valor. En ese momento “se apreció la necesidad de crear un departamento o área de rendimiento”, indica la Performance Engineer de InfoJobs, Almudena Vivanco, que se incorporó a la organización con ese objetivo.
Procedente de Borland, Vivanco conocía de primera mano la potencia de la herramienta SilkPerfomer, que coincidiendo con la compra de Borland por parte de Micro Focus en 2009 se incorporó al portfolio de esta última. Además y teniendo en cuenta que las aplicaciones del núcleo de InfoJobs están desarrolladas en Java, si bien también existen aplicaciones satélites desarrolladas en otros lenguajes como Ruby o PHP, es lógica la preferencia de Vivanco por esta herramienta: “SilkPerformer es una herramienta perfecta para hacer pruebas de aplicaciones Java y, además de funcionalidades como Java Explorer que te permite llegar al código, tiene capacidades avanzadas de monitorización del servidor con JMX (Java Management Extensions).
Oportunidades de mejora Una vez tomada la decisión, en InfoJobs se abordó la instalación de SilkPerformer y la consiguiente configuración del entorno de pruebas. “La instalación tiene cierto grado de complejidad”, reconoce Vivanco, para explicar que “es necesaria la instalación de una granja de máquinas o MMC (Multimachine Controller) para el control de los agentes que simulan el proceso de los usuarios, es decir, se necesita crear un entorno válido similar al de los usuarios de InfoJobs”.
Esta granja, que en el caso de InfoJobs suma cinco máquinas, es la que se encarga de simular la carga, mientras que la aplicación corre en el entorno de preproducción y la MMC también se encarga de la monitorización. Hay que tener asimismo en cuenta el networking que, como apunta Vivanco, “se trata de una parte crítica que muchas veces no se considera en el rendimiento y que tiene que ser lo más similar a producción o incluso compartida con producción, como es nuestro caso”.
En septiembre de 2008 empezaba a funcionar en Infojobs este nuevo entorno, que resulta clave a la hora de garantizar máximos niveles de disponibilidad y rendimiento en sus aplicaciones. “Existían aplicaciones en InjoJobs que se habían escrito hace 10 años y gracias a SilkPerfomer hemos podido detectar oportunidades de mejora, como la reutilización de recursos”, señala Vivanco, para apostillar que “aunque normalmente los entornos productivos no sólo están probados sino sobredimensionados, el código muchas veces utiliza recursos que no debe y resulta prioritario ajustar para no verse obligado a ampliar recursos”.
Con todo y teniendo en cuenta esas posibilidades de mejora, en InfoJobs se procedió a la generación nueva de código dando cumplimiento a una serie de requisitos relacionados tanto con el tiempo de carga de página (menos de tres segundos) como con el uso de recursos, ya sea CPU, disco, cachés, etc. “De esta forma nos aseguramos de que la aplicación está preparada para soportar una determinada carga”, subraya Vivanco, quien reconoce no obstante que “dependiendo de su nivel de criticidad, existen aplicaciones online en otros entornos que pueden que no cumplan con los requerimientos marcados”, pero en todo caso lo que resulta sí o sí imperativo es “preservar la sostenibilidad del entorno productivo”.
A día de hoy los resultados son satisfactorios teniendo en cuenta “desde 2008 hasta hoy ha incrementado su ‘uptime’ en un 0,56% rozando el 100%”, celebra Vivanco.
Listos para el doble de stress El área de rendimiento ha ido ganando peso en InfoJobs. Así en un primer momento, durante el cual en InfoJobs se utilizaba el modelo de desarrollo Waterfall, el rendimiento dependía de Calidad o QA. Pero en 2011 y coincidiendo con la adopción de la metodología SCRUM de cara a mejorar la agilidad y la efectividad de las subidas a producción, el área de rendimiento pasó a depender de Operaciones, el departamento responsable de los entornos productivos.
Otra muestra clara de la importancia que se otorga a esta área, que trabaja en estrecha colaboración con desarrollo, es la reciente actualización del entorno SilkPerformer. “Estábamos en la versión 2009 y este año hemos saltado a la 2011, además de duplicar el número de licencias, que han pasado de 150 a 300”. De esta forma y teniendo en cuenta que estas licencias corresponden al número de usuarios virtuales para las pruebas, InfoJobs ha multiplicado por dos su capacidad de simulación de accesos.
Por otro lado, “el aumento del número de licencias nos permite dar soporte a aplicaciones tipo web services, API y aplicaciones móviles”. Y es que, como bien sabe Vivanco, “estresar un entorno web es relativamente fácil, pero para estresar un entorno de web services o móvil es necesario al menos duplicarlo ya que las peticiones son mucho más rápidas”.