Hola desarrolladores: ¡Esta es mi primera publicación en esta plataforma! ?
Quería compartir una experiencia sorprendente que tuve con Express.js y SQL. Soy un desarrollador principiante y, mientras trabajaba en la API de mi proyecto, manejaba más de 200.000 solicitudes de API por día. Inicialmente, configuré una base de datos SQLite (~400 MB) con una API Express.js y usé el almacenamiento en caché de Node.js para acelerar las cosas.
Al principio, el tiempo de respuesta para una consulta era de alrededor de 200-300 ms, ya que implicaba varios JOIN y búsquedas. Entonces, decidí realizar algunos experimentos para ver si podía mejorar el rendimiento.
Esto es lo que hice:
¡El resultado fue sorprendente! Después de la indexación, algunas de mis consultas más complejas, que involucraban múltiples JOIN, se ejecutaban en solo 3 a 5 ms.
Anteriormente, con almacenamiento en caché de Node:
Después, solo con índices SQLite:
cada solicitud solo toma 7-10 ms sin ningún almacenamiento en caché.
Ahora las consultas son consistentemente rápidas, ¡y esto también redujo la carga del servidor! Inicialmente, estaba ejecutando mi aplicación en un droplet de DigitalOcean con 4 GB de RAM y 4 vCPU. Pero después de optimizar las consultas SQL, puedo manejar cómodamente la misma carga de trabajo con solo 2 GB de RAM y 2 vCPU.
Sé que esto puede parecer simple, pero la indexación SQL adecuada marcó una diferencia tan grande en el rendimiento de las consultas que ya ni siquiera necesito depender del almacenamiento en caché. ?
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3