tastyworks
tastyworks es una empresa de correduría, con sede en Chicago, IL, que lidera una revolución financiera para el inversionista independiente. Es la empresa gemela de tastytrade.com (una de las redes financieras en línea de mayor crecimiento en el mundo) y subsidiaria de propiedad de tastytrade, Inc.
tastyworks proporciona una plataforma de comercio poderosa y sencilla que interactúa con su estructura de microservicios distribuidos. PostgreSQL ya era su base de datos favorita, puesto que la empresa la usó previamente en otras partes de su infraestructura. La base de datos de tastyworks contaba con una replicación y una configuración básicas adecuadas a una carga de trabajo de tipo transaccional y analítico. Luego, tastyworks se inició en el sector de la correduría y, en enero de 2017, comenzó a promover las operaciones comerciales de sus clientes.
El desafío
El rápido éxito de tastyworks, poco después de su lanzamiento, originó un volumen de producción mayor a lo esperado causando problemas de rendimiento imprevistos.
A medida que la carga de trabajo transaccional aumentaba, la experiencia de su equipo técnico con el uso de PostgreSQL en otros proyectos no ofrecía una comprensión adecuada de los problemas de rendimiento y escalabilidad que estaban surgiendo. El equipo se dio cuenta rápidamente de la necesidad de identificar los obstáculos y ampliar debidamente la estructura hardware para lograr un mejor rendimiento inmediato y adecuar la plataforma para el crecimiento futuro.
Al enfrentarse a nuevos desafíos en materia de ingeniería y expansión, tastyworks sintió la necesidad de contratar a especialistas en arquitectura de datos. Inició a explorar las opciones que le permitirían ampliar su infraestructura de bases de datos y solucionar, a la vez, los problemas de rendimiento.
La solución
tastyworks analizó exhaustivamente los ofrecimientos de varios proveedores de servicios PostgreSQL en tema de consultoría, evaluación de bases de datos y soporte. 2ndQuadrant sobresalió por encima de todos los demás por el alcance de sus conocimientos técnicos y la superioridad de sus servicios. tastyworks quedó especialmente impresionada al ver que los principales responsables de PostgreSQL en 2ndQuadrant se involucraron directamente en los servicios de asesoramiento y soporte.
Los expertos de 2ndQuadrant realizaron un health-check estructural de la base de datos PostgreSQL de tastyworks. El análisis minucioso reveló una variedad de problemas esporádicos que estaban ralentizando la base de datos. Los servicios de consultoría, desde un principio, ayudaron a tastyworks a identificar problemas que se habían producido debido a la acción reiterada de las operaciones auto-analyze y auto-vacuum.
Mejoras en el rendimiento
Tras el análisis, 2ndQuadrant recomendó cambios indispensables para lograr un alto rendimiento de la base de datos. Debido a la naturaleza crítica de sus datos, tastyworks eligió contar con un equipo interno para implementar los cambios recomendados. Junto al soporte de producción 24/7 y a la orientación de los consultores de 2ndQuadrant, tastyworks tuvo éxito en la optimización de su base de datos a través de:
- Implementar repmgr para la replicación entre servidores; obteniendo una fácil gestión de la Alta Disponibilidad y una mejor productividad general debido a la reducción de los gastos administrativos.
- Introducir pgbouncer para el connection pooling. Repmgr y Pgbouncer trabajaron conjuntamente en el escalamiento de la infraestructura y para reducir la sobrecarga de conexiones.
- Actualizar su configuración de PostgreSQL y optimizar Linux para ajustarse a las mejores prácticas.
- Diseñar, configurar y migrar de forma fluida a un nuevo servidor concebido especialmente para ofrecer un rendimiento óptimo y un aumento sustancial del margen de crecimiento futuro.
A raíz de estos cambios, tastyworks fue capaz de ampliar horizontalmente su infraestructura de microservicios. Logró manejar simultáneamente miles de conexiones de sus clientes con altos niveles de rendimiento para los sistemas PostgreSQL subyacentes. Una arquitectura más sólida permitió mantener plataformas comerciales de alto rendimiento para el usuario final, incluso durante períodos de mayor actividad.
El empleo de PGBouncer permitió anticipar los problemas de rendimiento que sabíamos se producirían debido al aumento del volumen de transacciones. Se implementó en paralelo con otros trabajos de reestructuración y optimización de rendimiento. El efecto se hizo notar de inmediato. Durante nuestra prueba de carga diaria, observamos una mejora inmediata de 2 a 4 veces en el rendimiento máximo.
Jordan von Kluck, CTO, tastyworks
Viendo las drásticas mejoras en el rendimiento, en tastyworks se dieron cuenta de la importancia de contar constantemente con expertos en PostgreSQL, e iniciaron la colaboración con 2ndQuadrant en el marco de su plan de Soporte Platino 24/7.
Trabajar con 2ndQuadrant ha sido una excelente experiencia. Su equipo de soporte cuenta con amplios conocimientos y siempre contesta de forma oportuna y exhaustiva a nuestras preguntas. En el conjunto de soporte, consultoría sobre temas específicos y orientación general sobre procedimientos, 2ndQuadrant ha sido un recurso inestimable para nosotros en tastyworks.
Jordan von Kluck, CTO, tastyworks
Los servicios proporcionados.
- Soporte de producción PostgreSQL 24/7
- Health Check estructural
- Consultoría
Sobre 2ndQuadrant
2ndQuadrant es un equipo de diligentes expertos en PostgreSQL. Nuestros ingenieros de soporte cuentan en conjunto con más de 100 años de contribuciones de código al proyecto PostgreSQL, convirtiéndonos en la única compañía que ha contribuido características empresariales a cada una de las últimas 13 versiones.
Esto se combina con los más de 17 años de experiencia directa con nuestros clientes, a los que ofrecemos soluciones personalizadas, y hace de 2ndQuadrant el estándar de oro para productos y servicios PostgreSQL.