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

Question: any confirmed performance issues related to external url scans? #1

Open
andersrehn opened this issue May 8, 2019 · 1 comment

Comments

@andersrehn
Copy link

Looking at how the broken url detector function is scheduled the time when the scan is executed depends on when the users activates the plugin.

Let's say I activate the plugin at 14:15 then the plugin will each day around 14:15 do a scan for broken urls.
My first question is if anyone have found an issue that we have a large number of broken links and the plugin runs the scan at a busy time with lots of traffic?
Looking at how the code determines broken links all checks are fast checks except the last one where we do an actual request to the link. Numerous things could make this a bottleneck where the server is waiting for a broken link to respond.

In general I'm curious whether this could be a real problem or not. I did a check for one site that uses this plugin and found ~600 potential broken links to check each time. Hoping that not all links candidate for the worst case scenario, let's just assume all 600 links must be validated using the curl request.

I get the feeling that maybe it could be safer to use the plugin if we scheduled the link check at a known time instead of relying on when the user activates the plugin?

Something like wp_schedule_event( strtotime('02:00:00'), 'daily', 'task_to_run' ); would give more control over when the plugin potentially runs long running code sequences.

@sebastianthulin
Copy link
Member

This is correct. We may want to fix this.

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

No branches or pull requests

2 participants