Es noticia
Arrancar un modelo de negocio con la nube de Google
  1. Tecnología

Arrancar un modelo de negocio con la nube de Google

La pesadilla de cualquier startup tecnológica consiste en despertarse a las seis de la mañana de un domingo porque un servidor ha decidido que es un

Foto: Arrancar un modelo de negocio con la nube de Google
Arrancar un modelo de negocio con la nube de Google

La pesadilla de cualquier startup tecnológica consiste en despertarse a las seis de la mañana de un domingo porque un servidor ha decidido que es un buen momento para fundir su array de discos. En el siglo XXI lo que se espera de una infraestructura de despliegue es tener un enjambre de ingenieros trabajando 24/7 para volver a levantar el sistema. Son necesarias plataformas que permitan centrarse en abrir negocio y ofrecer una experiencia de usuario diferente, no en el parche de Linux que debería aplicar o si este disco duro es compatible con mi placa madre.

Nuestro producto pudo tener una primera versión online en 2009, hasta que la semana previa al pase a producción nos surgieron éstas y otras preguntas. Lo normal en estos casos es salir al mercado lo antes posible y preocuparse después de los detalles, y a nosotros el concepto nos gusta - al final salimos un año después sin el módulo de facturación, pero disponiendo de un mes para introducirlo con calma. Lo que no queríamos era salir a la calle con un producto incapaz de crecer o con un coste de operación exorbitado. Queríamos una plataforma que garantizase la escalabilidad y donde los fines de semana siguiesen siendo nuestros.

El Cloud computing (desarrollo en la nube) es un modelo de desarrollo que ha terminado de madurar en los últimos tres años, donde un proveedor ofrece una estructura virtual y escalable de servidores capaz de crecer con la demanda sin necesidad de interactuar físicamente con el hardware. En lugar de tener contratado un servidor en un CPD determinado se contrata una determinada cantidad de CPU, memoria y disco en una máquina no determinada de la nube, con capacidad de contratar más a sólo un click. Los principales proveedores de servicios de cloud (que forman la cabeza de una lista muy larga) son Amazon, Google y Microsoft. De modo que hubo que elegir.

Google AppEngine tiene una lista muy larga de pequeños detalles que bordan un día perfecto, aunque en la parte negativa incorpora otra lista no menos larga de cosas que arruinan tu día, le pegan fuego y lo arrojan barranco abajo. La limitación más importante es que está pensada para aplicaciones de más bien baja complejidad, con tiempos de respuesta por debajo de un segundo. Por otro lado, es un sistema que te obliga a desarrollar de tal manera que tu aplicación funcione sin problemas sin importar la cantidad de usuarios y peticiones concurrentes. La regla de oro aproximada viene a ser que si logras encontrar la manera de hacerlo con las limitaciones de AppEngine, Google te garantiza que tu aplicación no tiene mayor problema en funcionar para 20 usuarios o para 100 millones, sin cambios. Sin estrés. Es importante recalcar eso: tu plataforma será capaz de soportar tantas visitas como consigas atraer.

Es indudablemente más sencillo desarrollar con la nube de Amazon, que a fin de cuentas es una plataforma hardware virtual sobre la que puedes instalar el resto de tu infraestructura, cortada a medida. Lo malo es que los patrones de desarrollo de la nube no son inmediatamente intuitivos, y toman tiempo de aprender. Con Google estos patrones forman parte inherente de la infraestructura, lo que lo convierte en obligatorios en lugar de opcionales. Cualquier petición debe resolverse por debajo de un segundo. Los datos deben almacenarse en caché, que es mil veces más rápida que el disco duro. Dos peticiones sucesivas del mismo usuario pueden ser respondidas por servidores en Europa o Asia, respectivamente. Las imágenes del website deben ser entregadas por la infraestructura de servidores especializados en imágenes de Google. Todo esto y mucho más no es opcional, es obligatorio para poder trabajar con AppEngine.

Estas características pueden sonar como algo positivo, porque lo son. En contra, todo esto son piedras en el camino que complican el desarrollo web, obligando a tener en cuenta el rendimiento y escalabilidad en todo momento. Por ponerlo en una frase, estas cosas hacen más difícil el desarrollo de aplicaciones pero crean unos cimientos sólidos de cara al futuro.

Desde el punto de vista empresarial, la nube de Google combina la escalabilidad y alta disponibilidad con una reducción de costes muy agresiva con respecto a otras alternativas. En contra, esta plataforma presenta un vendor lock-in importante, al tener todos tus datos introducidos en una plataforma propietaria de un proveedor concreto. Hay que destacar que en este sentido AppEngine no es muy diferente que otras soluciones basadas en la nube.

Para nosotros, las garantías de la nube de Google compensan ampliamente los escollos a salvar. La infraestructura que hemos creado nos permite centrarnos en el futuro y no en rehacer nuestros pasos, dejando una infraestructura sólida para cuando nos llegue el momento de operar en otros países.

--

Ignacio Coloma y Enrique Lancis  son socios fundadores de la consultora tecnológica Extrema Sistemas de Información, dedicada al desarrollo de software avanzado con presencia en España, Suiza e Italia. Tras su paso por el IE Business School y gracias al programa de Venture Lab pudieron poner en funcionamiento su nuevo proyecto empresarial Koliseo Social Tickets S.L, plataforma social de ticketing desarrollado íntegramente en Google AppEngine.

La pesadilla de cualquier startup tecnológica consiste en despertarse a las seis de la mañana de un domingo porque un servidor ha decidido que es un buen momento para fundir su array de discos. En el siglo XXI lo que se espera de una infraestructura de despliegue es tener un enjambre de ingenieros trabajando 24/7 para volver a levantar el sistema. Son necesarias plataformas que permitan centrarse en abrir negocio y ofrecer una experiencia de usuario diferente, no en el parche de Linux que debería aplicar o si este disco duro es compatible con mi placa madre.