Instalei meu próprio Discourse ‘estável’ com Postgres e Redis externos.
Para detalhar a arquitetura: no Azure, 1 LoadBalancer, 1 VM hospedando o container do Discourse com compartilhamento NFS para backups e imagens, 1 Postgres, 1 Redis.
Eu o personalizei com meu próprio logo, os plugins discourse-calendar e discourse-news (e outras coisas também, mas irrelevantes aqui).
Aleatoriamente, por um período de cerca de 30 minutos, algumas falhas na interface do usuário ocorrem:
O logo principal reverte para o padrão
O favicon reverte para o padrão
A página “upcoming-events” gerada pelo discourse-calendar desaparece (sem link e resposta 404 ao acessar por URL)
O logo personalizado dado ao discourse-news (com uma URL) desaparece
Depois, ele volta.
Não tenho nada nos logs sobre isso.
Meu console do navegador não mostra nada.
Uma coisa que posso dizer é que durante esse período, consigo ver um aumento nas falhas de cache do Redis.
Alguém pode me ajudar a solucionar isso? Eu nem sei onde posso encontrar logs relevantes…
@pfaffman eu usei a instalação padrão do meu ponto de vista.
Exceto que usei o recurso fornecido para usar banco de dados e redis externos.
Mas eu uso o app.yaml e o docker build e run descritos na instalação padrão.
Eu fiz isso para poder fornecer alta disponibilidade e diferentes estratégias de escalonamento: com uma implantação totalmente independente, você só pode escalar verticalmente (aumentar a escala do seu nó) e não ter alta disponibilidade.
Entendi. Isso parece que deve funcionar. Minha melhor suposição é que você está reduzindo para zero máquinas virtuais e o que você vê é o site em cache no seu navegador. Ou alguma outra forma de o balanceador de carga não estar se conectando ao host. Ou o Discourse não está recebendo o IP real e está limitando a taxa (mas geralmente você veria um erro).
Mas seus recursos de alta disponibilidade estão fornecendo baixa disponibilidade. A menos que você esteja passando de dezenas de usuários na maior parte do tempo para milhares em outros momentos (como para um site de esportes), o escalonamento provavelmente causará mais problemas do que soluções.
Portanto, a primeira coisa que eu faria seria remover o balanceador de carga e ver se isso resolve. Depois, decida o que fazer a partir daí. Se acontecer uma vez por mês, não será fácil diagnosticar.