Ridimensionare il server, quali configurazioni devono essere modificate? - unicorn workers, memoria, ecc

TLDR: Esiste una guida o un elenco di configurazioni consigliate da considerare quando si ridimensiona un server?

Quando si installa Discourse per la prima volta su un server, ci sono alcune impostazioni predefinite.
Una comodità che il cloud offre è semplicemente cambiare il tipo di istanza in una diversa con più/meno CPU e memoria.
Per quanto ne so, le configurazioni automatiche non si adattano automaticamente al nuovo server (sarebbe utile avere un avviso sulla Dashboard di amministrazione che la tua configurazione di Discourse non sembra corrispondere all’hardware su cui è in esecuzione).

Ad esempio, ho considerato queste impostazioni dal file app.yml:

## Imposta db_shared_buffers al massimo del 25% della memoria totale.
## verrà impostato automaticamente dal bootstrap in base alla RAM rilevata, oppure è possibile sovrascriverlo
db_shared_buffers: "4096MB"

## può migliorare le prestazioni di ordinamento, ma aggiunge utilizzo di memoria per connessione
#db_work_mem: "40MB"

## Quante richieste web simultanee sono supportate? Dipende da memoria e core CPU.
## verrà impostato automaticamente dal bootstrap in base alle CPU rilevate, oppure è possibile sovrascriverlo
UNICORN_WORKERS: 4

Ciò presupporrebbe che Discourse sia l’unica cosa in esecuzione sul server, cosa che non è sempre il caso.

Di solito specifico due unicorn_workers per core e il 25% della memoria di sistema come db_shared_buffers

3 Mi Piace

Se esegui discourse-setup cambierà in base alle dimensioni suggerite. Ma stai guardando i suggerimenti, quindi puoi farlo da solo.

2 Mi Piace

Ciao. È ora di aumentare le funzionalità del server. Per modificare le proprietà del processore e della RAM del server, devo spegnerlo. C’è qualcosa di importante che dovrei fare prima di ridimensionare il server? Voglio che tutto sia a posto e funzionante quando tornerò.

Scaricherei un backup completo e una copia del file app.yml nel caso in cui non ritorni.

2 Mi Piace

È possibile modificare db_share_buffers senza ricostruire?

cd /var/discourse
./launcher destroy app
./launcher start app