Autoddos

No estoy seguro de si esto es un error o no, pero parece que estoy experimentando un auto-ataque de denegación de servicio en mi foro.
Una vez al día, el sitio se cae porque parece estar creando un índice:

CREATE INDEX CONCURRENTLY temp_idx_recent_regular_post_search_data
ON post_search_data USING GIN(search_data)
WHERE NOT private_message AND post_id >= 0

Esto, a su vez, crea muchas consultas paralelizadas:

SELECT “posts”.“id”, “posts”.“user_id”, “posts”.“topic_id”, “posts”.“post_number”, “posts”.“raw”, “posts”.“cooked”, “posts”.“created_at”, “posts”.“updated_at”, “posts”.“reply_to_post_number”, “posts”.“reply_count”, “posts”.“quote_count”, “posts”.“deleted_at”, “posts”.“off_topic_count”, “posts”.“like_count”, “posts”.“incoming_link_count”, “posts”.“bookmark_count”, “posts”.“score”, “posts”.“reads”, “posts”.“post_type”, “posts”.“sort_order”, “posts”.“last_editor_id”, “posts”.“hidden”, “posts”.“hidden_reason_id”, “posts”.“notify_moderators_count”, “posts”.“spam_count”, “posts”.“illegal_count”, “posts”.“inappropriate_count”, “posts”.“last_version_at”, “posts”.“user_deleted”, “posts”.“reply_to_user_id”, “posts”.“percent_rank”, “posts”.“notify_user_count”, “posts”.“like_score”, “posts”.“deleted_by_id”, “posts”.“edit_reason”, “posts”.“word_count”, “posts”.“version”, “posts”.“cook_method”, “posts”.“wiki”, “posts”.“baked_at”, “posts”.“baked_version”, “posts”.“hidden_at”, “posts”.“self_edits”, “posts”.“reply_quoted” …

El problema aquí es que estoy usando una base de datos administrada que tiene un pool de conexiones de 197, que se llena rápidamente.

Esto huele a que se está ejecutando en una base de datos con poca potencia o mal configurada.

¿Qué tamaño tiene su base de datos y cuáles son las especificaciones del servidor de base de datos?

1 me gusta

Digitalocean administrado
8 GB RAM / 4vCPU / 160 GiB Disco / Solo primario / TOR1 - PostgreSQL 15

@Eviepayne ¿pudiste resolver esto? Si no, ¿puedes contarnos qué más intentaste y qué has descubierto sobre tu problema? ¿Es esta una instalación compatible, creada usando las instrucciones de instalación oficiales?

Hasta donde puedo decir, creo que está resuelto. No sé cómo lo arreglé, pero pareció haberse detenido después de algunas actualizaciones a revisiones de contenedor más nuevas.
Estoy en: 4d20baa8754fd782f01fbf8bf5c687cae846915a

Mi instalación está bastante alejada de la instalación soportada en este momento.
La instalación estándar aplica, pero lo que ha cambiado es:

Base de datos externa (gestionada con digitalocean)
Caché externa (valkey gestionada con digitalocean)
Revisión de contenedor fijada
Cliente ACME reconfigurado para desafíos DNS

Hubo un problema en el pasado donde no podía actualizar debido a que las versiones de pgvector cambiaban y no estaban disponibles en DO para pg15, eso se ha resuelto desde entonces, así que actualicé y el comportamiento de auto-ddos parece no estar ocurriendo más.

Creo que la versión en la que estaba antes era: db67a0841e8e14ae70de0890441f8158c50ae3c9

3 Me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.