Limitação de taxa inesperada na visualização do calendário, apesar das altas configurações de aceleração da API personalizada

Descrição

Após uma reconstrução recente do Discourse (auto-hospedado), estou encontrando consistentemente limitação de taxa voltada para o usuário (erros 429) ao visualizar o calendário principal, mesmo com meu site tendo atividade muito baixa (1-2 usuários simultâneos). Esse comportamento começou a aparecer após minhas duas últimas reconstruções.

Minha configuração de limite de taxa (conforme definido em app.yml):

  • DISCOURSE_MAX_ADMIN_API_REQS_PER_MINUTE: 4x o padrão
  • DISCOURSE_MAX_REQS_PER_MINUTE: 4x o padrão
  • DISCOURSE_MAX_REQS_PER_DAY: 4x o padrão
  • Nenhum limite de taxa por IP é especificado.

Observações

  • Nenhum erro é mostrado em /logs.
  • Nenhum proxy reverso está em uso (contêiner Let’s Encrypt padrão e um registro A no domínio).
  • Apenas as visualizações do calendário parecem acionar essa limitação de taxa inesperada.
  • Não houve alterações na atividade do usuário ou em plugins personalizados.
  • Isso começou apenas após uma reconstrução recente do Discourse.
  • Admin > Logs estão limpos no momento do incidente.

Solução de problemas até agora

  • Confirmei que as configurações personalizadas de limite de taxa estão presentes e bem acima dos padrões.
  • Tentei vários navegadores, limpei caches.
  • Criei um calendário de teste com apenas alguns eventos, ainda reproduzível.
  • Tópicos do meta.discourse.org sugerem que pode haver limites de taxa internos adicionais não documentados que substituem os valores personalizados após atualizações.

Referências


Solicitação

Você poderia, por favor:

  1. Confirmar se há novos limitadores de taxa ocultos que afetariam solicitações de background ou geradas por plugins após uma atualização/reconstrução recente e, em caso afirmativo, descrever como substituí-los ou ajustá-los.
  2. Explicar por que meus limites de taxa personalizados altos não estão sendo respeitados para a visualização do calendário.
  3. Sugerir mais soluções de problemas ou alterações de configuração, se houver.

Obrigado!

Parece que isso pode estar relacionado a Re-add full ics export - #9 by kelv porque 100 eventos parecem ser exibidos, e após cerca de 2 minutos, outro grande lote pode ser exibido, e eles não aparecem gradualmente, mas em grandes blocos.

Editar: Esse comportamento com limite de taxa é gerenciável por enquanto, mas se torna aparente ao avançar muito; consigo ver todos os eventos da minha semana atual e todos os eventos da próxima, mas é se eu avançar para a próxima semana que atinjo o limite rígido.

Eu também devo esclarecer que o calendário completo de eventos futuros v6 não tinha limites de taxa nesta extensão, antes de eu definir as configurações personalizadas de limitação de API. Essas configurações de app.yml não alteraram o limite de taxa visível no FullCalendar :wink:

@kelv você poderia dar uma olhada nisso, por favor?

Eu ainda consigo reproduzir isso

Não conseguimos reproduzir isso no momento. Em qual commit você está? Quantos eventos você tem?

Discourse latest-release +369

Docker_manager 3e5ec72d

Bbcode 633030d8

Categories suppressed d5550658

Who’s online 3fe319b8

Temas e Componentes

Padrão


[Banners de Categoria]

Exiba banners nas páginas de categoria usando os detalhes da sua categoria existente. Saiba mais

[Tópico Clicável]

Se você quiser editar este tema, você deve enviar uma alteração em seu repositório

[Links Personalizados no Cabeçalho (ícones)]

Se você quiser editar este tema, você deve enviar uma alteração em seu repositório

[Gifs do Discourse]

Se você quiser editar este tema, você deve enviar uma alteração em seu repositório

[Pré-visualizações de PDF Inline]

Se você quiser editar este tema, você deve enviar uma alteração em seu repositório

[Modo Leitor]

Se você quiser editar este tema, você deve enviar uma alteração em seu repositório

44 na próxima semana

nenhum dos ~40 carregando na semana seguinte

O FullCalendar passou a se comportar adequadamente

muitos, acho que MAX_RESULTS ultrapassou seu limite agora após 27 de setembro. Tenho que atualizar o Full Calendar para ver meus eventos toda vez que olho

Desculpe, mas não consigo acompanhá-lo. Você consegue fazer um vídeo de você navegando no calendário, por favor?

1 curtida

em um PWA

1 curtida

Então, onde está o 429?

Eu não acho que seja esse tipo de limite de taxa. Quando mencionei as configurações de aceleração da API, eu realmente quis dizer que meu Discourse está configurado para lidar com muitos tópicos de eventos, mas a visualização do FullCalendar não está funcionando tão bem quanto antes de o código ser mesclado

Desculpe pela confusão

Editar: editei o OP para refletir a falta de erros 429

Estou nas versões mais recentes. Do ponto de vista da interface do usuário, este problema se resolveu durante a noite. Atualizei ontem à noite, mas o problema não foi resolvido imediatamente. O número total de eventos que passaram é de cerca de 270. Agora voltei a usar o PWA…

minha instância do Discourse está atualizada agora. Tive um relato de um usuário separado da minha instância ontem de que uma visualização futura da semana não estava carregando todos os eventos. Já tendo notado que esse erro não afeta a interface do usuário da visualização da semana atual, tentei localizar o erro no meu laptop. Abaixo está a reprodução do vídeo;

Eu reconstruí e este problema continua a aparecer ao passar da semana atual para a próxima semana.

Conseguimos diagnosticá-lo?

Atualização do Discourse pelos últimos 20 commits corrigiu este bug

Ainda não atualizei, mas este bug começou a acontecer novamente

Editar: voltei para o PWA e o bug não está acontecendo

Editar2: ainda estou recebendo o erro no console do meu navegador no laptop, não verifiquei o calendário embora