Caso de estudio - NCache para Crucial High Availability en Moonpig.com

Telenor Casos de éxito

NCache es extremadamente rápido y el rendimiento es fantástico. Nos permite evitar preocuparnos por el lado de la sesión de ASP.Net. En lo que respecta a la experiencia del usuario, no hay un retraso perceptible en la carga de las sesiones de NCache.

jay jetley
Arquitecto de Sistemas
Moonpig.com
Logotipo de Moonpig.com
 

País o Región:
Reino Unido, Australia y Estados Unidos

Industria:
Consumidor en línea Tarjetas de felicitación

Perfil de la compañía:
Moonpig.com, un minorista de tarjetas de felicitación en línea, se fundó en 1999, durante la era de las puntocom, cuando los jóvenes empresarios e inversores vieron grandes oportunidades para vender productos a través de Internet. Si bien muchas empresas puntocom se desvanecieron, la visión del fundador y presidente de Moonpig, Nick Jenkins, perduró más allá de esos primeros años difíciles y Moonpig se estableció como una importante marca en línea.

La compañía creció constantemente desde 2000, vendiendo primero a consumidores del Reino Unido. En 2004 se trasladó al mercado australiano y en 2006 las ventas totales de tarjetas alcanzaron las 670,000 en el año. Con la ayuda de las campañas de publicidad televisiva en el Reino Unido, el crecimiento de Moonpig aumentó rápidamente a la asombrosa cantidad de nueve millones de tarjetas de felicitación en 2010. Durante ese año, expandió sus operaciones a los EE. UU.

De un total de 6 millones de clientes, casi la mitad compra en el sitio al menos una vez al año. Los principales picos de Moonpig incluyen el Día de San Valentín, el Día de la Madre, el Día del Padre y Navidad.

Alachisoft Producto:
NCache

Necesidades del cliente satisfechas:

  • Almacenamiento de sesiones confiable
  • Escalabilidad
  • Alta disponibilidad
  • Facilidad de mantenimiento

Sobre Alachisoft:
Alachisoft, una empresa con sede en California ofrece NCache y StorageEdge. NCache es un caché de datos distribuidos en memoria que le permite almacenar en caché los datos de la aplicación y el estado de sesión de ASP.NET para aumentar el rendimiento y la escalabilidad de su aplicación. StorageEdge acelera SharePoint mediante la externalización de BLOB y el almacenamiento en caché de BLOB y datos de lista.

Puede descargar una prueba gratuita de 30 días completamente funcional de NCache en esta página.

Alachisoft
Sede Corporativa
12005 Ford Road, Suite 520
Dallas, TX 75234

US: +1 (214) 764-6933
UK: +44 (207) 993-8327

sales@alachisoft.com
support@alachisoft.com

NCache permite a moonpig.com mantener una alta disponibilidad crucial para su sitio web de alto tráfico al almacenar sus sesiones ASP.NET en un almacenamiento de caché confiable y replicado.

Descargue el PDF aquí.
jay jetley

"Originalmente, comenzamos con un solo servidor que usaba el almacenamiento en caché de InProc. Pero pronto nos dimos cuenta de que necesitábamos escalar horizontalmente a más de un servidor. Inicialmente, probamos lo que estaba integrado con .NET, es decir, InProc y SQLserver, y descubrimos que no funcionaban". no funciona

jay jetley
Arquitecto de Sistemas
Moonpig.com

El Desafío

En 2006, se hizo evidente que el sitio web de Moonpig en el Reino Unido se encontraba en una fase de rápido crecimiento, con un número de visitantes y pedidos que representaban una carga considerable para el sitio web, que se creó en el ASP de Microsoft..NET framework. Hacia finales de 2006, los sitios de Moonpig recibían medio millón de visitas al mes. A mediados de 2010, esas cifras aumentaron a 2.5 millones de visitas al mes.

Muy pronto, Moonpig se dio cuenta de que las opciones de almacenamiento ASP.NET Session State InProc y SqlServer no eran efectivas para mantener una alta disponibilidad en vista de este crecimiento.

Jay Jetley, arquitecto de sistemas, dijo: "Originalmente, comenzamos con un solo servidor que usaba el almacenamiento en caché de InProc. Pero pronto nos dimos cuenta de que necesitábamos escalar a más de un servidor. Inicialmente, probamos lo que estaba integrado con .NET, lo que significa InProc y SQLserver, y descubrimos que no funcionaban. Literalmente probamos SQLserver durante media hora. Se hizo bastante obvio que no iba a funcionar y simplemente volvimos a un servidor. Hicimos esto antes de que realmente lo necesitáramos. escalar a dos servidores. Sin embargo, estábamos llegando al punto en que necesitábamos poder usar varios servidores, no solo para la carga en los períodos pico".

En este caso, el almacenamiento de estado de sesión de ASP.NET no pudo escalar en función de InProc y SQLserver por varias razones. InProc tiene limitaciones. Fue diseñado para usarse en un entorno de un solo servidor y un solo proceso y no funciona en un entorno ASP.NET de múltiples servidores o múltiples procesos. Como resultado, las sesiones se pierden. Otro problema de InProc es su limitación de memoria. A medida que aumenta el número de sesiones en el proceso ASP.NET, cada sesión requiere memoria. El tamaño de la memoria de este proceso de trabajo crece significativamente y, en una plataforma de 32 bits, hay un límite de memoria de 1 GB sobre el tamaño que puede llegar a tener un proceso de trabajo.

SqlServer es un poco mejor, pero no mucho, ya que no es un almacén de datos en memoria, sino un almacén de datos basado en disco. Todas las bases de datos se mantienen en el disco porque crecen tanto que la memoria no es suficiente para contener toda la base de datos. Así, una base de datos almacena sus datos en un disco o almacenamiento persistente. Debido al almacenamiento en disco, el rendimiento de SqlServer no es tan rápido, lo que provoca una caída del rendimiento.

Además, SqlServer no se escala linealmente, lo que impide que una empresa como Moonpig haga crecer sin problemas una granja web. Además, como mecanismo de almacenamiento, se convierte en un cuello de botella tanto para las sesiones como para los datos de la aplicación. En consecuencia, un servidor de base de datos no escala para sesiones y datos de aplicaciones.

 

El NCache Solución

Se inició la búsqueda de una solución a este difícil problema de almacenamiento de sesiones. El equipo técnico de Moonpig descubierto NCache al leer una revista para desarrolladores de Microsoft .NET muy respetada publicada en los EE. UU. y en poco tiempo, Moonpig instaló NCache para resolver el problema del almacenamiento de sesión.

Jetley informa, "NCache es extremadamente rápido y el rendimiento es fantástico. Le permite evitar preocuparse por el lado de la sesión. En lo que respecta a la experiencia del usuario, no hay un retraso perceptible en la carga de las sesiones de Ncache."

” No solo se alivia el problema del almacenamiento de sesiones, sino que NCache también proporciona a Moonpig algunos otros beneficios importantes. "NCache nos permite mantener una alta disponibilidad crucial, mientras manejamos con precisión el almacenamiento de la sesión y hacemos actualizaciones en línea de manera efectiva", señala Jetley.

"Esta característica clave se traduce en un par de beneficios", dijo. "Primero, significa que simplemente podemos usar un algoritmo de equilibrador de carga de red estándar haciendo un round robin. Por lo tanto, no tenemos que preocuparnos por qué servidor un usuario hace una subsiguiente solicitud. Eventualmente, todos tienen acceso a la misma sesión. Eso es un gran beneficio".

"En segundo lugar, NCache nos permite tomar servidores dentro y fuera del balanceador de carga a voluntad. Podemos sacar servidores, aplicar Windows y otros parches, hacer instalaciones, hacer actualizaciones de código, asegurarnos de que todo funcione sin conexión. Luego, cuando volvemos a traer esos servidores al balanceador de carga, sabemos que si alguien golpea nuestro servidor, esa sesión simplemente estará allí. Eso es algo que no puede hacer con InProc o SQLserver".

"En cuanto a la escalabilidad, hay una clara ventaja. Si empezamos a ralentizar las sesiones, podemos agregar más NCache servidores. Ahora tenemos seis servidores web, apuntando a dos NCache servidores. Esos dos NCache los servidores están funcionando bien. Pero cuando experimentamos un aumento del tráfico y esos dos NCache los servidores ya no funcionan bien, solo podemos agregar otro Ncache servidor y saber de inmediato que tenemos verdadera escalabilidad".

 

Planes a corto plazo

Moonpig.com está claramente en racha con el número de visitantes y los ingresos siguen creciendo. Sin embargo, la administración de Moonpig mantiene una estrecha vigilancia sobre su sitio web y el creciente tráfico de clientes que experimenta las 24 horas del día, los 7 días de la semana. Si bien la empresa ha confiado en Ncache para el almacén de sesiones, ahora busca usar más de NCachecapacidades de almacenamiento en caché para agilizar sus procesos de pedido de tarjetas.

 

¿Qué hacer a continuación?

© Copyright Alachisoft 2002 - Todos los derechos reservados. NCache es una marca registrada de Diyatech Corp.