Forum andato in tilt - forse dopo l'aggiornamento

Post lungo…

Un paio di giorni fa ho migrato il mio forum su un nuovo server. La migrazione è andata bene e gli utenti sono stati in grado di accedere e utilizzarlo normalmente. Tuttavia, dopo 2-3 ore di accesso, gli utenti hanno riscontrato l’impossibilità di utilizzarlo. Inizialmente non ho notato il problema, ma entro 10-15 minuti ho scoperto che anche il mio account era interessato. Quello che vedevo era la pagina del forum ripetutamente visualizzata lungo la pagina ma con il contenuto mancante… quindi intestazione… un po’ di testo… di nuovo intestazione… di nuovo un po’ di testo… di nuovo intestazione… ecc.

Ho ipotizzato che qualcosa fosse andato storto con la migrazione, quindi, dato che c’erano stati pochissimi post dalla migrazione e avevo ancora il vecchio server disponibile, ho semplicemente avviato il forum sul vecchio server e ho reindirizzato il DNS a quello. Questo mi avrebbe dato il tempo di capire cosa fosse andato storto e riprovare la migrazione.

Poi oggi, il mio vecchio forum mi ha segnalato la necessità di aggiornamenti critici. Li ho applicati e le cose sembravano a posto. Tuttavia, un’ora o due dopo, il vecchio forum ha iniziato a presentare lo stesso strano problema di visualizzazione che aveva il mio forum migrato.

Quindi ora penso che ci sia qualcosa che non va dopo l’aggiornamento. Il server migrato avrebbe scaricato il codice più recente al momento della creazione, quindi ha presentato il problema subito. Il vecchio forum ha ricevuto gli aggiornamenti solo oggi e ha iniziato a “impazzire” poco dopo.

Finora ho provato senza successo:

  1. ./launcher rebuild app
  2. Commentare tutti i plugin in app.yml e ./launcher rebuild app
  3. Esecuzione in modalità provvisoria con tutte le opzioni attivate
  4. Pulizia della cache del browser
  5. Ho provato diversi browser (Chrome, Edge, Firefox e Opera)

Il problema sembra essere progressivo per gli utenti connessi. Oggi ho effettuato l’accesso con un account di prova e questo non ha presentato il problema, ma quando l’ho provato sul server migrato, l’account di prova ha infine mostrato gli stessi problemi. Sfortunatamente, al momento non posso provare altro perché il mio account amministratore presenta il problema, quindi è inutilizzabile.

Ho un backup precedente all’aggiornamento, ma sospetto che non aiuterà. Se ricostruisco il forum, scaricherà gli ultimi aggiornamenti, quindi se ripristino il contenuto in esso, probabilmente impazzirà di nuovo entro poche ore.

Configurazione del server:

Debian 12 con Docker Swarm v26.1.4. 120 GB di spazio su disco disponibili. 64 GB di RAM con solo circa 20 GB attualmente in uso. Le connessioni al server avvengono tramite Cloudflare Tunnels. Il vecchio server ha meno spazio su disco e memoria disponibili, ma nessuno dei due è saturo.

Sto cercando di pensare a cos’altro posso fare ora per cercare di rimettere le cose online. Sono aperto a suggerimenti!

Minimizzazione automatica forse?

6 Mi Piace

Grazie per il suggerimento.

Era attivato. Non sono sicuro del perché, dato che normalmente non lo attivo. L’ho disattivato (JS, CSS e HTML) ma vedo ancora le pagine ripetute scorrere sullo schermo.

PS. Noto che l’auto-minify di Cloudflare sarà deprecato all’inizio di agosto.

Hai seguito le istruzioni per svuotare anche la cache di Cloudflare?

1 Mi Piace

Sì. La cache di Cloudflare (e la cache del browser) è stata svuotata dopo che l’auto-minify è stato disattivato.

1 Mi Piace

In tal caso, ti consiglio di controllare la console per sviluppatori del browser per vedere se ci sono errori quando si verifica il problema.

Potresti anche voler riprovare la modalità provvisoria ora che hai risolto il problema di Cloudflare.

1 Mi Piace

La modalità provvisoria ora funziona. Nessun errore nella console JS, a parte un avviso di deprecazione del fuso orario. Tornerò al tema predefinito e disabiliterò tutti i componenti del tema per vedere se funziona correttamente al di fuori della modalità provvisoria, quindi li riabiliterò uno alla volta per vedere se riesco a restringere il campo.

Ci vorrà un po’ prima di poter confermare come stanno andando le cose perché il taxi di papà deve fare un viaggio!

1 Mi Piace

Sembra che l’auto-minify fosse il colpevole. Non so come/quando sia stato abilitato. Non l’ho fatto di proposito, essendo stato scottato da problemi simili con altri sistemi in passato. Il mio sospetto è che Cloudflare abbia recentemente (credo) aggiunto un pulsante per attivare una serie di impostazioni di base per migliorare il modo in cui i browser interagivano con i siti web. Ho esaminato le modifiche suggerite e ho abilitato quelle che sembravano sensate e sicure. Sono tornato a guardare di nuovo le opzioni e non vedo alcun riferimento all’auto-minify, ma forse è stato abilitato come parte delle ‘impostazioni di base’?

La cache di Cloudflare spiega anche perché questo problema è apparso improvvisamente ore dopo aver applicato gli aggiornamenti di Discourse. Ho impostato la cache TTL del browser di Cloudflare a 4 ore. Non ho svuotato la cache di Cloudflare dopo l’aggiornamento, quindi per alcune ore dopo le persone continuavano a ricevere i vecchi file ‘buoni’ che ricevevano da settimane dall’ultimo aggiornamento di Discourse. Poi, dopo 4 ore, Cloudflare ha iniziato ad aggiornare la propria cache, ha visto i nuovi file di Discourse e li ha minificati prima di aggiungerli alla sua cache. Poi, mentre i browser richiedevano aggiornamenti per le proprie cache, hanno ricevuto i file corrotti. Poiché i browser aggiornavano le proprie cache in momenti diversi, ogni utente vedeva le cose andare storte in momenti diversi.

Lezioni apprese:

  1. Svuotare la cache di Cloudflare dopo aver applicato un aggiornamento di Discourse. Sembra ovvio ora, ma non ci avevo pensato prima!
  2. Non abilitare l’auto-minify. Devo averlo fatto ma non so come/quando. Sapevo già che non era una buona idea, avendo rotto un sito Wordpress con esso tempo fa, ma questo ha rafforzato il messaggio.

Molte grazie a @JammyDodger e @david per avermi aiutato a risolvere questo problema :smiley:

1 Mi Piace

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