Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RSS Renderer Slowing down system #865

Open
mariobehling opened this issue Jul 6, 2019 · 1 comment · May be fixed by #845
Open

RSS Renderer Slowing down system #865

mariobehling opened this issue Jul 6, 2019 · 1 comment · May be fixed by #845
Labels

Comments

@mariobehling
Copy link
Collaborator

With regards to speed, the culprits are happy to present themselves.
From quickly tailing the prod log app@voicerepublic:~/app/current$ tail -f log/production.log, I see many RSS requests happen.
Those are not efficiently implemented (and very old code).

@munen
Copy link
Collaborator

munen commented Jul 7, 2019

I'll elaborate a little on the RSS feed scaling issue: VR is an open platform and features multiple podcasts (for example per user or venue). The feature itself was implemented in May 2014 when scaling wasn't an issue at VR. Back then, it was required to have a running version fast and not a fast version.

The current implementation aggregates all necessary information for every podcast/rss request. This is a CPU and DB intensive task which - depending on the number of talks - takes seconds up to minutes.

Since VR has gotten more popular, many peoples feeds have been subscribed to with podcatchers. Those in turn make recurring requests to see if there's new content.

The mitigation has already been started in PR #845. In that, we're introducing a message broker and work queue (RabbitMQ). Feeds will pre-emptively be rendered whenever a user makes changes to his content and then be cached. So they will only be rendered once and the actual request from the podcatcher will be trivial and fast.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants