Ciao a tutti,
Stiamo riscontrando regolarmente timeout sulla nostra query /search. Abbiamo eseguito dei benchmark su alcuni termini di ricerca e alcune query possono richiedere fino a 2 minuti per completarsi. Abbiamo trovato questo post, ma ci chiedevamo se ci siano ulteriori raccomandazioni su come gestire il problema. Ecco alcune informazioni rilevanti relative al nostro caso specifico:
- Il nostro sito più grande (quello che va in timeout più frequentemente) conta circa 1.700.000 post.
- Stiamo utilizzando alcune impostazioni predefinite di autovacuum di PostgreSQL. Abbiamo raccolto alcune statistiche sulle tabelle pertinenti:
categories,posts,topics,post_search_dataeusers; sembrano essere sottoposte a vacuum circa una volta al giorno, quindi non pensiamo che il problema sia legato a righe morte che rallentano la ricerca. - Abbiamo eseguito manualmente
Jobs::ReindexSearch.new({}), ma non abbiamo riscontrato miglioramenti significativi.
Stiamo valutando l’esecuzione di rake search:reindex su quel sito, sapendo che richiederà comunque molto tempo, ma vorremmo sapere se avete altri suggerimenti.
Grazie in anticipo.