Por que as estatísticas não são atualizadas em tempo real?

Olá, estamos construindo um front-end em torno da API do Discourse e encontramos um comportamento estranho em relação às estatísticas que não são atualizadas em tempo real em alguns lugares.

  • Por um lado, ao buscar /directory_items.json?period=all&order=likes_given, notamos que se um usuário der alguns likes, as estatísticas não são atualizadas até que passe um tempo considerável.
  • O outro lugar onde notamos isso é ao buscar as estatísticas de resumo do usuário, buscando /u/<user>/summary.json, as estatísticas parecem não ser atualizadas corretamente ou, pelo menos, não em tempo real.

Estamos usando a imagem Docker Bitnami para executar o Discourse, não temos certeza se esse problema pode estar relacionado a essa imagem específica, ou se este é um comportamento esperado da própria API do Discourse.

A imagem Docker usa algo chamado Sidekiq, que pensamos que poderia ser o culpado pelo problema. Tentamos executar o que parecia ser a tarefa correta (Jobs::DashboardStats) para atualizar as estatísticas, mas sem sucesso. As estatísticas não são atualizadas mesmo após acionar as tarefas agendadas. Existe alguma outra tarefa relacionada a isso, ou não estamos olhando no lugar certo?

Atenciosamente,
Manolo

Todas as boas plataformas distinguem entre coisas que absolutamente precisam estar atualizadas e aquelas que provavelmente podem esperar e economizar recursos.

Os Itens do Diretório parecem ser atualizados a cada hora. Isso significa que é muito mais barato mostrar o mesmo resultado para cada usuário individualmente do que calculá-lo sob demanda toda vez que um usuário tenta acessá-lo.

O código-fonte é seu amigo:

E sim, você pode conseguir aumentar essa frequência com um plugin simples, mas cuidado com o impacto em recursos e desempenho que você pode ter.

4 curtidas

Entendido, era o que estávamos pensando que era o problema, esqueci de verificar o código-fonte, pois não esperava que estivesse lá, embora faça todo o sentido!

Obrigado pela resposta rápida!

1 curtida

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