root@tymin:/var/discourse# swapon
NAME TYPE SIZE USED PRIO
/dev/dm-0 partition 1.9G 1G -1
root@tymin:/var/discourse# df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
udev devtmpfs 2008928 0 2008928 0% /dev
tmpfs tmpfs 404176 41336 362840 11% /run
/dev/mapper/VolGroup-root ext4 59629100 50018424 6991008 88% /
tmpfs tmpfs 2020876 0 2020876 0% /dev/shm
tmpfs tmpfs 5120 0 5120 0% /run/lock
tmpfs tmpfs 2020876 0 2020876 0% /sys/fs/cgroup
/dev/sda1 ext2 240972 226212 2319 99% /boot
tmpfs tmpfs 404172 0 404172 0% /run/user/1001
tmpfs tmpfs 404172 0 404172 0% /run/user/1000
/dev/loop0 btrfs 10485760 4250700 4424308 49% /chroot/compile
overlay overlay 59629100 50018424 6991008 88% /var/lib/docker/overlay2/4e9863e34f958e15f57c752fda2057b88f2aa03afaca82e0651f3aa23e56f795/merged
Quanto traffico state ricevendo? Il vostro forum sembra troppo piccolo per riscontrare problemi di questo tipo.
Si tratta di un’installazione ufficiale? Su che tipo di VPS è in esecuzione il vostro forum?
La pagina di amministrazione dice 50k visualizzazioni di pagina negli ultimi 30 giorni.
Suppongo di sì? Ho seguito le istruzioni che ho potuto trovare all’epoca.
Non ho fatto molto per personalizzare l’installazione.
Non sono sicuro. È un server virtuale a 2 core e 4 GB di cari.net.
Il tuo forum è in esecuzione dietro nginx 1.10.3 che ha oltre 6 anni, quindi c’è qualcosa di strano qui.
A parte questo, deve essere una delle installazioni di Discourse con le prestazioni peggiori che abbia mai visto. Non voglio promuovere il nostro servizio di hosting in sé, ma hai mai considerato di passare a un altro host? Un forum di queste dimensioni e con questo traffico dovrebbe funzionare bene anche su un server molto piccolo.
Sono sicuro che ci sia molto da imparare dalle informazioni del miniprofiler che hai condiviso. Al momento salta all’occhio solo una cosa: hai forse un numero enorme di bozze di post??
/my/activity/drafts
[quote=“Ed S, post:25, topic:260501, username:Ed_S”]hai forse un numero enorme di post in bozza??
/my/activity/drafts
[/quote]
Ne ho 3 in bozza, apparentemente.
È in esecuzione debian 9. ![]()
nginx sembra funzionare bene, il resto del mio sito (https://fredrik.hubbe.net/) non è lento.
Ma secondo quale metrica?
È discourse stesso che consuma molta memoria, IO o CPU? (Se sì, perché? Non ci ho fatto quasi niente…)
O è il sistema che è lento? Se sì, posso parlarne con cari.net.
E probabilmente proverò quel riavvio più tardi stasera per vedere se aiuta.
Sono passati circa 2 anni, immagino che potrebbe essere il momento?
Aspetta un attimo:
$ expr 0 `ps auxwww | tail +2 | awk '{ print " + " $6}'`
787952
Se il totale residente di tutti i processi è inferiore a 800 MB, cos’altro sta facendo il resto della memoria?
Anche /proc/meminfo non sembra molto utile:
root@tymin:/# cat /proc/meminfo
MemTotal: 4041756 kB
MemFree: 122852 kB
MemAvailable: 53388 kB
Buffers: 15300 kB
Cached: 87636 kB
SwapCached: 125192 kB
Active: 314348 kB
Inactive: 300988 kB
Active(anon): 270652 kB
Inactive(anon): 276288 kB
Active(file): 43696 kB
Inactive(file): 24700 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 1949692 kB
SwapFree: 921348 kB
Dirty: 144 kB
Writeback: 0 kB
AnonPages: 484704 kB
Mapped: 72596 kB
Shmem: 34520 kB
Slab: 319792 kB
SReclaimable: 26836 kB
SUnreclaim: 292956 kB
KernelStack: 6272 kB
PageTables: 19484 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 3970568 kB
Committed_AS: 4146996 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 4001728 kB
DirectMap2M: 192512 kB
Forse ho più bisogno di quel riavvio di quanto pensassi… 2 anni di memory leak del kernel?
Riavviato, ho 2 GB di memoria libera ora.
Vediamo se dura. ![]()
Dopo aver utilizzato Discourse per un po’, scoprirai che lo spazio su disco è molto grande.
Principalmente a causa del problema con l’immagine Docker, più aggiornamenti ci sono, più spazio viene occupato.
Esegui il seguente comando:
./launcher cleanup
Può aiutarti a liberare lo spazio occupato da Discourse.
Ciò aiuterà con l’utilizzo dello spazio su disco, sfortunatamente in questo caso:
c’è un sacco di swapping in corso che uccide le prestazioni.
Tutto è in attesa del disco, che è uno stato terribile in cui trovarsi.
Non si tratta di non funzionare bene, per me era un’indicazione che qualcosa potrebbe essere obsoleto o non è un’installazione standard.
Finora, il riavvio sembra funzionare.
Ancora non sono sicuro del perché, però.
Sono contento che il riavvio sembri aver aiutato!
Potrebbe rivelarsi informativo. Condividerò il mio, un sistema molto più piccolo.
Ma ecco un pensiero, un’impostazione del kernel che può avere un impatto sulle prestazioni, hai abilitato le pagine trasparenti di grandi dimensioni. Io non le ho:
# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
Vedi MKJ’s Opinionated Discourse Deployment Configuration per consigli!
Ecco il mio meminfo, su un sistema molto più piccolo che funziona bene:
# cat /proc/meminfo
MemTotal: 1009140 kB
MemFree: 91888 kB
MemAvailable: 88692 kB
Buffers: 7644 kB
Cached: 137040 kB
SwapCached: 144884 kB
Active: 418972 kB
Inactive: 380324 kB
Active(anon): 345300 kB
Inactive(anon): 345852 kB
Active(file): 73672 kB
Inactive(file): 34472 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 2097144 kB
SwapFree: 1049764 kB
Dirty: 400 kB
Writeback: 0 kB
AnonPages: 620688 kB
Mapped: 67192 kB
Shmem: 36536 kB
Slab: 67768 kB
SReclaimable: 27832 kB
SUnreclaim: 39936 kB
KernelStack: 3804 kB
PageTables: 14968 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 2601712 kB
Committed_AS: 3784772 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
CmaTotal: 0 kB
CmaFree: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 460652 kB
DirectMap2M: 587776 kB
Ok, quindi voglio solo chiudere questo argomento.
Il riavvio ha aiutato, e sta ancora aiutando.
Non so cosa abbia causato il memory leak, e a meno che qualcosa non cambi, probabilmente dovrò riavviare di nuovo una volta all’anno circa, cosa che posso accettare.
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.