429 demasiadas solicitudes

Hola a todos, sé que ya hay temas de “demasiadas solicitudes” antes, pero este no parece encajar 100%.

Estoy recibiendo errores 429 intermitentes en Discourse (y todo es bastante lento en general) con este rastreo de pila:

Error: Demasiadas solicitudes
    at s (https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:9:9188)
    at a (https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:9:9045)
    at o (https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:9:8936)
    at Object.trigger (https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:18:7223)
    at https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:18:9212
    at t.invoke (https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:9729)
    at e.t.flush (https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:8732)
    at e.t.flush (https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:10782)
    at e.n._end (https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:15440)
    at e.n.end (https://discourse.looker.com/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:16:12110)

Siempre es ese enlace .js, que es un bloque de JS bastante impresionante que realmente no significa nada para mí. La instancia que ejecuta Discourse parece estar bajo una carga mínima: 10% de CPU, todo lo demás parece bastante nominal, así que es un poco confuso para mí que esté recibiendo errores 429.

¿Hay configuraciones que pueda aumentar en algún lugar para cambiar el límite de velocidad global? La instancia puede manejar mucha más carga de la que Discourse parece pensar, o me estoy perdiendo algo mayor causado por un plugin o un error.

¡Gracias!

¿Está su sitio detrás de un proxy inverso o de algo más que pueda alterar las direcciones IP reales de entrada?

No, no lo creo (y los registros capturan direcciones IP normalmente), pero está detrás de un ELB. Definitivamente coincidió con un aumento significativo del tráfico (parece un ataque DDoS o algo similar)

Pero si mi comprensión sobre la limitación de tasa es correcta, eso no debería haber afectado a todos los usuarios. Solo al usuario que intentaba visitar un millón de veces, ¿verdad?

Voy a verificar lo de la arquitectura de la red. ¡Gracias!

Creo que nginx dentro del contenedor de Discourse está utilizando la IP del ELB para el bucket de limitación de velocidad en lugar de la IP original del cliente.

Eso parece bastante posible. Acabo de verificar que tenemos una configuración de ELB en AWS sin nada particularmente especial. ¿Es el resultado de algo que he configurado incorrectamente de mi parte?

No estoy 100% seguro de cuáles serían los siguientes pasos. Si me indicas la dirección correcta, probablemente podré trabajar con mi equipo de operaciones para resolverlo. ¡Muchas gracias!