Pero aparte de eso, esa idea de usar un subproceso para obtener estos data se encarga del caché y TTL y desalojo y todo es genial porque descarga mucho de tráfico que va hacia otro servicio. Así que gran cosa.
Entonces, cuando comenzamos a hacer la misma prueba y avanzamos con pruebas similares, hicimos como un aumento gradual de cero a 10 solicitudes por segundo, luego sostenido a 50 solicitudes por segundo, nos movimos con este código optimizado a nueve inicios de llamada. Así que absolutamente genial. Así que tenemos un número de llamadas. Pero además, mira el P99. P99 al principio era de más de dos segundos. Ahora ya no.
Y cuando avanzo aún más y empiezo a tener en cambio, digamos diferentes métricas para el inicio de la llamada, miramos eso y seleccionamos 794, 800 milisegundos, OK, mucho menos de lo que era antes en el peor inicio de llamada e incluso mejor, medio segundo, más o menos en el mejor inicio de llamada. Pero mira el tiempo de ejecución cuando esas API están calientes. Nos movimos a 73 milisegundos en el peor, pero el mejor fue de seis milisegundos.
Ahora tuve varios de ellos cuando estaba haciendo esta testing que estaba alrededor de seis, siete milisegundos. Estaba oscilando entre estos números. Pero la belleza de este enfoque es que realmente puedes exprimir. Ahora, es por eso que tienes mucho menos código, porque puedes exprimir mucho más respuesta en un segundo porque solo toma seis milisegundos obtener la respuesta. Así que obviamente, cuanto más rápido, mejor. Así que pagas menos. Lo otro genial de esto es que si piensas en eso, si tienes una solicitud múltiple, hemos creado una caja de arena. Tenemos por defecto, el límite de concurrency de mil es un límite suave que puedes aumentar. Solo pregunta a tu arquitecto de soluciones en AWS o abre un ticket con el soporte y puedes aumentar el límite de tu función lambda. Así que eso es una buena pista. Ese es solo un límite suave.
OK, entonces si tienes un tiempo de respuesta de 100 milisegundos para una caja de arena, significa que tienes 10 TPS por caja de arena. Pero si lo preguntara, ¿cuántos tengo, dirías que lo duplica? No realmente. Hay otra cosa en la que necesitas pensar porque, ya sabes, tenemos este enfoque de usar cajas de arena y estos viven junto con otros obviamente clientes. Garantizamos que tienes al menos 10 solicitudes por segundo por caja de arena. Puedo garantizarte que cuando probé eso, estaba superando fácilmente las 10 con este enfoque porque estaba, digamos, teniendo un entorno de ejecución muy rápido. Pero eso significa obviamente que si no eres capaz de exprimir en menos de 100 milisegundos, entonces probablemente necesitas pensar en que vas a manejar aproximadamente 10 TPS.
Comments