(9)9) ¿Cómo limita Redis el envío de mensajes de texto?
Resumen: 1, ventana, 2 depósitos de tokens, redis+lua 3 embudos
1 Ventana fija: guardada como una cadena, IP como clave, valor como número de incrementos. , >Limitado a 100. Establezca el tiempo de espera en 1 minuto y el botón desaparecerá después de 1 minuto.
Buen rendimiento, implementación sencilla y bajo consumo de memoria.
Inexacto: la primera solicitud llegó en 0, las 99 restantes llegaron en 60, llegaron 6100 solicitudes, 199 vinieron de 60-6100.
2. Ventana deslizante: IP es clave, valor = lista (marca de tiempo de cada visita), cada vez que se accede a la lista de consultas, se comparan las primeras 100 con la marca de tiempo actual.
El control del tiempo es inexacto, el rendimiento es deficiente, la implementación es relativamente compleja y el consumo de memoria es grande.
Token bucket: Además de limitar la velocidad de transmisión promedio, también permite ráfagas de tráfico.
Embudo: límite forzado de la tasa de transferencia
¿Límite actual de RateLimit? , redis+Lua:blogs.com/orangesea/articles/11299557.html
¿Embudo? /s/3d_USEzLf-eLSBj_qS9jng