 #  Cron vs Joomla Lazy Scheduler and WebCron 

 

  ![Cron vs Joomla Lazy Scheduler and WebCron](https://cdn.richeyweb.com/images/articles/lazy-scheduler-and-web-cron/lazy-scheduler-and-web-cron.webp)    - [Joomla! Documentation: Scheduled Tasks](https://docs.joomla.org/Help4.x:Scheduled_Tasks/en)
- [Joomla! Documentation: Using the CLI](https://docs.joomla.org/J4.x:Using_the_CLI)
 


As a [Joomla](/joomla-techniques/youtube-rss-feed-gallery "YouTube RSS Feed Gallery") developer, I often leave local dev site tabs open in the background for hours, sometimes days. Recently, I switched back to one of these tabs for a quick check, with the DevTools Network panel open. To my horror, dozens, maybe over a hundred AJAX calls fired at once, flooding the network log. The browser froze, navigation stalled, and it took agonizing seconds to recover. “That’s why it’s so slow sometimes!” I realized, pinpointing Joomla’s Lazy Scheduler as the culprit, piling up tasks in the background. This frustrating experience reminded me of the tried and true solution: regular cron with Joomla’s scheduler:run CLI command.

## The Unreliability of Lazy Scheduler and WebCron

Joomla’s com\_scheduler component automates tasks like cache clearing and email sending, but its two trigger methods: Lazy Scheduler and WebCron, part of the plg\_system\_schedulerunner plugin - are unreliable.

Before someone accuses me of misrepresenting the Schedule Runner plugin as being "unreliable" - that's not what I mean. The plugin works just fine - as intended. I mean, it doesn't run [scheduled tasks](/joomla-techniques/speed-up-your-joomla-workflow-with-a-custom-administrator-menu "Speed Up Your Joomla Workflow with a Custom Administrator Menu") on a reliable schedule. Tasks are triggered after they're due - by the next website visitor. What happens if your next visitor doesn't arrive until hours later? The tasks run hours late.

## Lazy Scheduler: Visitor-Driven Instability

Lazy Scheduler uses client-side JavaScript (run-schedule.js) to trigger tasks via AJAX calls on qualifying page loads (when lazy\_scheduler.enabled is true and tasks are due):

`index.php?option=com_ajax&plugin=RunSchedulerLazy&group=system&format=raw`

###   
Drawbacks:

1. Traffic Dependency: Tasks require visitor page loads. On low-traffic sites (like my local dev sites) tasks may not run for hours or days, delaying operations like backups.
2. Browser Lockup: Browsers throttle setInterval in background tabs, queuing AJAX calls. When the tab regains focus, as I saw in DevTools, queued calls fire simultaneously, freezing the browser and disrupting navigation.
3. Performance Impact: Resource-heavy tasks strain servers, slowing page loads for users unaware their browsers are triggering maintenance.
 
## WebCron: External but Still Flawed

WebCron allows external services (e.g., cron monitoring tools) to trigger tasks via a secure URL:

`index.php?option=com_ajax&plugin=RunSchedulerWebcron&group=system&format=json&hash=...`

### Drawbacks:

1. External Dependency: WebCron relies on external services, which may fail or be misconfigured, risking missed tasks.
2. Concurrency Limitations: Joomla’s Scheduler runs one task at a time by default. A hung task (e.g., due to timeout or failed status update) blocks the queue, halting others. A concurrency flag exists but isn’t exposed in the UI, limiting flexibility.
3. Security Complexity: Managing secure hashes adds setup complexity and risks if exposed.
 
Both methods are less reliable than server-side cron, with Lazy Scheduler’s traffic dependency and browser issues, and WebCron’s external risks and concurrency bottlenecks.

## The Tried and True Solution: scheduler:run with Cron

 ![No Conan, not CROM - CRON!](https://cdn.richeyweb.com/images/articles/lazy-scheduler-and-web-cron/conan-the-barbarian-crom.avif) No Conan, not CROM - CRON! Joomla’s scheduler:run CLI command, executed via regular server-side cron jobs, runs tasks without relying on browsers or external services, avoiding the issues I encountered. Benefits include:

1. Traffic-Independent: Cron jobs (e.g., \*/15 \* \* \* \* php /path/to/joomla/cli/joomla.php scheduler:run) ensure tasks run on schedule, even on low-traffic sites.
2. No Browser Issues: Server-side execution eliminates setInterval pile-up, preventing browser lockup like I observed.
3. Robust Concurrency: CLI jobs run in the CliApplication environment, allowing multiple instances via cron without the Scheduler’s single-task lock, avoiding blocks from hung tasks.
4. Predictable Scheduling: Admins can set precise intervals or run specific tasks (scheduler:run --id=123), optimizing for low-traffic periods.
5. Seamless Integration: Uses the same Scheduler class, requiring no task changes.
6. Enhanced Security: No client-side hashes or external dependencies.
 
## Switching to Cron

1. Disable Client-Side Triggers: In Joomla’s admin panel, go to [System](/blog/development/gpc-dnt-do-not-tracks-toothless-twin "GPC: DNT/Do Not Track’s Toothless Twin") &gt; Manage &gt; [Plugins](/blog/personal/why-my-joomla-extensions-are-free "Why My Joomla Extensions Are Free"), find plg\_system\_schedulerunner (search for "System - Schedule Runner"), set lazy\_scheduler.enabled and webcron.enabled to 0.
2. Set Up Cron: 
    - Test: php /path/to/joomla/cli/joomla.php scheduler:run
    - Add cron job (via crontab -e or cPanel):  
        `*/15 * * * * php /path/to/joomla/cli/joomla.php scheduler:run >> /path/to/joomla/logs/scheduler.log 2>&1`
3. Monitor: Check scheduler.log for task outcomes.
 
## Practical Considerations

- [User Experience](/blog/hosting/unavailable-after-white-hat-seo-hack-might-be-paying-off "unavailable_after White-Hat SEO Hack Might Be Paying Off"): Lazy Scheduler burdens visitors’ browsers, risking freezes like I saw. WebCron’s external triggers still introduce risks. Cron runs server-side, ensuring smooth navigation.
- Reliability: Cron’s predictable execution and concurrency flexibility avoid WebCron’s external risks and Lazy Scheduler’s fragility, as seen in my DevTools flood.
- Setup Trade-Offs: Lazy Scheduler and WebCron are accessible for shared hosting but unreliable. Cron requires server setup, but tools like cPanel make it manageable for non-technical users.
 
## Conclusion

Setting up a scheduler cron job is one of the first things I do on production sites. Skipping that configuration on my dev site reminded me of just how important that step is for performance and user-experience. Something so simple, so easy to overcome, is probably causing noticeable performance issues on many [Joomla sites](/blog/development/generator-tag-claim-your-joomla-sites "Generator Tag: Claim Your Joomla Sites"). I don't see many people adding it to their Joomla how-to's.

My dev site’s freeze, exposed by a flood of AJAX calls in DevTools, revealed Lazy Scheduler’s unreliability. WebCron, while externally triggered, shares concurrency and dependency issues. The tried and true solution - Joomla’s scheduler:run CLI command with regular cron is: traffic-independent, browser-free, and reliable, with robust concurrency handling. Switch to cron for seamless automation and a better user experience.



- [      email ](mailto:?subject=Cron+vs+Joomla+Lazy+Scheduler+and+WebCron&body=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fhosting%2Fcron-vs-joomla-lazy-scheduler-and-webcron)
- [      facebook ](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fhosting%2Fcron-vs-joomla-lazy-scheduler-and-webcron)
- [      x-twitter ](https://twitter.com/intent/tweet?text=Cron+vs+Joomla+Lazy+Scheduler+and+WebCron%3A+https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fhosting%2Fcron-vs-joomla-lazy-scheduler-and-webcron)
- [      linkedin ](http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fhosting%2Fcron-vs-joomla-lazy-scheduler-and-webcron&title=Cron+vs+Joomla+Lazy+Scheduler+and+WebCron&summary=As+a+Joomla+developer%2C+I+often+leave+local+dev+sit...)
- [      pinterest ](http://pinterest.com/pin/create/button/?url=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fhosting%2Fcron-vs-joomla-lazy-scheduler-and-webcron&media=https%3A%2F%2Fwww.richeyweb.com%2Fimages%2Farticles%2Flazy-scheduler-and-web-cron%2Fconan-the-barbarian-crom.avif&description=Cron+vs+Joomla+Lazy+Scheduler+and+WebCron)
 


 

   [  Previous article: AI Slop vs Quality Content and Technical SEO   AI Slop vs Quality Content and Technical SEO ](/blog/hosting/ai-slop-vs-quality-content-and-technical-seo) [  Next article: AI Browsers Turn Users into Spies  AI Browsers Turn Users into Spies  ](/blog/hosting/ai-browsers-turn-users-into-spies)  

##### We Value Your Privacy

 

We use cookies to enhance your experience and for traffic analysis. By continuing to visit this site you agree to our use of cookies.

[Privacy Policy](/privacy-policy)

 Details 

###### Google Tag Manager Items

- Ad Storage
- Ad User Data
- Ad Personalization
- Analytics Storage
- Functionality Storage
- Personalization Storage
- Security Storage
 
 

 

 

 

 

 Decline Accept
```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.richeyweb.com/#organization","name":"RicheyWeb","url":"https://www.richeyweb.com/","logo":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/logo/richeyweb.svg","contentUrl":"https://www.richeyweb.com/images/logo/richeyweb.svg","width":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"@id":"https://www.richeyweb.com/#logo"},"image":{"@id":"https://www.richeyweb.com/#logo"},"sameAs":["https://x.com/ComRicheyweb","https://www.facebook.com/RicheyWebDev/","https://www.youtube.com/channel/UCxnVG8BwOvQRO7hVqNX7T2g","https://community.joomla.org/service-providers-directory/listings/115:richeyweb.html"],"description":"RicheyWeb is a custom software developer specializing in Joomla extensions.","ContactPoint":[{"@type":"ContactPoint","url":"https://www.richeyweb.com/contact-us","telephone":"903-873-8460","contactType":"Owner/Administrator","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"},{"@type":"ContactPoint","url":"https://www.richeyweb.com/bugs","telephone":"903-873-8460","contactType":"Technical Support","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"}],"knowsAbout":["Computer programming",{"@type":"Thing","name":"Computer programming","sameAs":["https://en.wikipedia.org/wiki/Computer_programming","https://www.wikidata.org/wiki/Q80006","https://g.co/kg/m/01mf_"]},"PHP",{"@type":"Thing","name":"PHP","sameAs":["https://en.wikipedia.org/wiki/PHP","https://www.wikidata.org/wiki/Q59","https://g.co/kg/m/060kv"]},"JavaScript",{"@type":"Thing","name":"JavaScript","sameAs":["https://en.wikipedia.org/wiki/JavaScript","https://www.wikidata.org/wiki/Q2005","https://g.co/kg/m/02p97"]},"arduino","Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"White hat",{"@type":"Thing","name":"White hat","sameAs":["https://en.wikipedia.org/wiki/White_hat_(computer_security)","https://www.wikidata.org/wiki/Q7995625","https://g.co/kg/m/03ns_5"]},"Search engine optimization",{"@type":"Thing","name":"Search engine optimization","sameAs":["https://en.wikipedia.org/wiki/Search_engine_optimization","https://www.wikidata.org/wiki/Q180711","https://g.co/kg/m/019qb_"]},"Search engine marketing",{"@type":"Thing","name":"Search engine marketing","sameAs":["https://en.wikipedia.org/wiki/Search_engine_marketing","https://www.wikidata.org/wiki/Q846132","https://g.co/kg/m/06mw8r"]},"Digital marketing",{"@type":"Thing","name":"Digital marketing","sameAs":["https://en.wikipedia.org/wiki/Digital_marketing","https://www.wikidata.org/wiki/Q1323528","https://g.co/kg/g/122hcnps"]},"Web hosting service",{"@type":"Thing","name":"Web hosting service","sameAs":["https://en.wikipedia.org/wiki/Web_hosting_service","https://www.wikidata.org/wiki/Q5892272","https://g.co/kg/m/014pz4"]},"Email hosting service",{"@type":"Thing","name":"Email hosting service","sameAs":["https://en.wikipedia.org/wiki/Email_hosting_service","https://www.wikidata.org/wiki/Q5368818","https://g.co/kg/m/09w60m"]},"Internet hosting service",{"@type":"Thing","name":"Internet hosting service","sameAs":["https://en.wikipedia.org/wiki/Internet_hosting_service","https://www.wikidata.org/wiki/Q1210425","https://g.co/kg/m/09w5yw"]},"Virtual hosting",{"@type":"Thing","name":"Virtual hosting","sameAs":["https://en.wikipedia.org/wiki/Virtual_hosting","https://www.wikidata.org/wiki/Q588365","https://g.co/kg/m/024mvh"]},"Web performance",{"@type":"Thing","name":"Web performance","sameAs":["https://en.wikipedia.org/wiki/Web_performance","https://www.wikidata.org/wiki/Q7978612","https://g.co/kg/m/0gfj3f1"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"General Data Protection Regulation",{"@type":"Thing","name":"General Data Protection Regulation","sameAs":["https://en.wikipedia.org/wiki/General_Data_Protection_Regulation","https://www.wikidata.org/wiki/Q1172506","https://g.co/kg/m/0pk_7xs"]},"SERP",{"@type":"Thing","name":"SERP","sameAs":["https://en.wikipedia.org/wiki/SERP","https://www.wikidata.org/wiki/Q2205811","https://g.co/kg/g/11c5szp7kc"]},"Artificial intelligence",{"@type":"Thing","name":"Artificial intelligence","sameAs":["https://en.wikipedia.org/wiki/Artificial_intelligence","https://www.wikidata.org/wiki/Q11660","https://g.co/kg/m/0mkz"]},"Prompt engineering",{"@type":"Thing","name":"Prompt engineering","sameAs":["https://en.wikipedia.org/wiki/Prompt_engineering","https://www.wikidata.org/wiki/Q108941486","https://g.co/kg/g/11p6kpgt_n"]},"E-learning",{"@type":"Thing","name":"E-learning","sameAs":["https://en.wikipedia.org/wiki/E-learning_(theory)","https://www.wikidata.org/wiki/Q182250","https://g.co/kg/g/122czm1f"]},"Sharable Content Object Reference Model",{"@type":"Thing","name":"Sharable Content Object Reference Model","sameAs":["https://en.wikipedia.org/wiki/Sharable_Content_Object_Reference_Model","https://www.wikidata.org/wiki/Q827811","https://g.co/kg/m/06_40"]},"Experience API",{"@type":"Thing","name":"Experience API","sameAs":["https://en.wikipedia.org/wiki/Experience_API","https://www.wikidata.org/wiki/Q7807728","https://g.co/kg/g/1yw9ktxr8"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]},"Nginx",{"@type":"Thing","name":"Nginx","sameAs":["https://en.wikipedia.org/wiki/Nginx","https://www.wikidata.org/wiki/Q306144","https://g.co/kg/m/02qft91"]},"MySQL",{"@type":"Thing","name":"MySQL","sameAs":["https://en.wikipedia.org/wiki/MySQL","https://www.wikidata.org/wiki/Q850","https://g.co/kg/m/04y3k"]}],"areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"memberOf":["Mensa International",{"@type":"Organization","name":"Mensa International","sameAs":["https://en.wikipedia.org/wiki/Mensa_International","https://www.wikidata.org/wiki/Q184194","https://g.co/kg/m/0140pf"]},"National Rifle Association",{"@type":"Organization","name":"National Rifle Association","sameAs":["https://en.wikipedia.org/wiki/National_Rifle_Association","https://www.wikidata.org/wiki/Q863259","https://g.co/kg/m/0j6f9"]},"CompTIA",{"@type":"Organization","name":"CompTIA","sameAs":["https://en.wikipedia.org/wiki/CompTIA","https://www.wikidata.org/wiki/Q597534","https://g.co/kg/m/040shq"]},"ISFCE LLC",{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://isfce.com","https://g.co/kg/g/11wxm5r0rg"]}],"hasCredential":[{"@type":"EducationalOccupationalCredential","name":"Joomla 3 Certified Administrator","credentialCategory":"Certification","description":"Administrator Exam is the first available Joomla! certification exam","recognizedBy":{"@type":"Organization","name":"Open Source Matters, Inc.","sameAs":["https://en.wikipedia.org/wiki/Open_Source_Matters,_Inc.","https://g.co/kg/g/11f00wvjhz"]},"url":"https://certification.joomla.org/certified-user-directory/michael-richey","about":["Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/badge.webp","contentUrl":"https://www.richeyweb.com/images/contact/badge.webp","width":{"@type":"QuantitativeValue","value":300,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":86,"unitCode":"PX"},"caption":"Joomla 3 Certified Administrator"}},{"@type":"EducationalOccupationalCredential","name":"Certified Computer Examiner","credentialCategory":"Certification","description":"Internationally recognized computer forensics certifiecation","recognizedBy":{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://en.wikipedia.org/wiki/ISFCE_LLC","https://g.co/kg/g/11wxm5r0rg"]},"url":"https://isfce.com/","about":["Digital forensics",{"@type":"Thing","name":"Digital forensics","sameAs":["https://en.wikipedia.org/wiki/Digital_forensics","https://www.wikidata.org/wiki/Q3246940","https://g.co/kg/m/0cnxzfx"]},"Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"Mobile device forensics",{"@type":"Thing","name":"Mobile device forensics","sameAs":["https://en.wikipedia.org/wiki/Mobile_device_forensics","https://www.wikidata.org/wiki/Q6887097","https://g.co/kg/m/06zp3tp"]},"Network forensics",{"@type":"Thing","name":"Network forensics","sameAs":["https://en.wikipedia.org/wiki/Network_forensics","https://www.wikidata.org/wiki/Q7001032","https://g.co/kg/m/05pb280"]},"Database forensics",{"@type":"Thing","name":"Database forensics","sameAs":["https://en.wikipedia.org/wiki/Database_forensics","https://www.wikidata.org/wiki/Q5227405","https://g.co/kg/m/0cgqsy"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/isfce-cce.webp","contentUrl":"https://www.richeyweb.com/images/contact/isfce-cce.webp","width":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"caption":"Certified Computer Examiner"}}],"hasOfferCatalog":{"@type":"OfferCatalog","name":"Web Services","itemListElement":[{"@type":"Offer","itemOffered":{"@type":"Service","name":"Hosting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Development"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Search Engine Optimization"}}]}},{"@type":"WebSite","@id":"https://www.richeyweb.com/#website","url":"https://www.richeyweb.com/","name":"RicheyWeb","publisher":{"@id":"https://www.richeyweb.com/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.richeyweb.com/search?q={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string","valueMaxLength":256,"valueMinLength":2,"valuePattern":"^[A-Za-z0-9\\s]+$"}},"creator":{"@id":"https://www.richeyweb.com/#organization"},"copyrightHolder":{"@id":"https://www.richeyweb.com/#organization"}},{"@type":"WebPage","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#webpage","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron","name":"Cron vs Joomla Lazy Scheduler and WebCron","description":"Joomla's Lazy Scheduler & WebCron can cause browser freezes & performance issues. Using server-side cron with Joomla's CLI is a more reliable solution.","isPartOf":{"@id":"https://www.richeyweb.com/#website"},"about":{"@id":"https://www.richeyweb.com/#organization"},"inLanguage":"en-GB"},{"@type":"Article","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/lazy-scheduler-and-web-cron/lazy-scheduler-and-web-cron.webp","contentUrl":"https://www.richeyweb.com/images/articles/lazy-scheduler-and-web-cron/lazy-scheduler-and-web-cron.webp","width":{"@type":"QuantitativeValue","value":888,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":499,"unitCode":"PX"},"caption":"Cron vs Joomla Lazy Scheduler and WebCron","representativeOfPage":true},"headline":"Cron vs Joomla Lazy Scheduler and WebCron","description":"Joomla's Lazy Scheduler & WebCron can cause browser freezes & performance issues. Using server-side cron with Joomla's CLI is a more reliable solution.","author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"},"datePublished":"2025-10-26T00:00:00+00:00","dateModified":"2026-03-30T00:00:00+00:00","about":["Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]},"Web performance",{"@type":"Thing","name":"Web performance","sameAs":["https://en.wikipedia.org/wiki/Web_performance","https://www.wikidata.org/wiki/Q7978612","https://g.co/kg/m/0gfj3f1"]},"cron",{"@type":"Thing","name":"cron","sameAs":["https://en.wikipedia.org/wiki/Cron","https://www.wikidata.org/wiki/Q300864","https://g.co/kg/m/025t72w"]}],"mentions":["Ajax",{"@type":"Thing","name":"Ajax","sameAs":["https://en.wikipedia.org/wiki/Ajax_(programming)","https://www.wikidata.org/wiki/Q169527","https://g.co/kg/m/05gj6g"]},"Command-line interface",{"@type":"Thing","name":"Command-line interface","sameAs":["https://en.wikipedia.org/wiki/Command-line_interface","https://www.wikidata.org/wiki/Q189053","https://g.co/kg/m/01yzs"]},"JavaScript",{"@type":"Thing","name":"JavaScript","sameAs":["https://en.wikipedia.org/wiki/JavaScript","https://www.wikidata.org/wiki/Q2005","https://g.co/kg/m/02p97"]},"Web hosting service",{"@type":"Thing","name":"Web hosting service","sameAs":["https://en.wikipedia.org/wiki/Web_hosting_service","https://www.wikidata.org/wiki/Q5892272","https://g.co/kg/m/014pz4"]},{"@type":"Article","@id":"https://www.richeyweb.com/blog/development/generator-tag-claim-your-joomla-sites#article","url":"https://www.richeyweb.com/blog/development/generator-tag-claim-your-joomla-sites","name":"Generator Tag: Claim Your Joomla Sites","headline":"Generator Tag: Claim Your Joomla Sites","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/generator-tag-claim-your-joomla-sites/generator-tag.webp","contentUrl":"https://www.richeyweb.com/images/articles/generator-tag-claim-your-joomla-sites/generator-tag.webp","width":{"@type":"QuantitativeValue","value":1274,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":716,"unitCode":"PX"},"caption":"Generator Tag: Claim Your Joomla Sites"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/joomla-techniques/youtube-rss-feed-gallery#article","url":"https://www.richeyweb.com/joomla-techniques/youtube-rss-feed-gallery","name":"YouTube RSS Feed Gallery","headline":"YouTube RSS Feed Gallery","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/tutorialmemes/i-bet-hes-thinking-about-other-women.webp","contentUrl":"https://www.richeyweb.com/images/tutorialmemes/i-bet-hes-thinking-about-other-women.webp","width":{"@type":"QuantitativeValue","value":889,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":500,"unitCode":"PX"},"caption":"YouTube RSS Feed Gallery"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/personal/why-my-joomla-extensions-are-free#article","url":"https://www.richeyweb.com/blog/personal/why-my-joomla-extensions-are-free","name":"Why My Joomla Extensions Are Free","headline":"Why My Joomla Extensions Are Free","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/why-my-joomla-extensions-are-free/free-extensions-kinison.webp","contentUrl":"https://www.richeyweb.com/images/articles/why-my-joomla-extensions-are-free/free-extensions-kinison.webp","width":{"@type":"QuantitativeValue","value":666,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":374,"unitCode":"PX"},"caption":"Why My Joomla Extensions Are Free"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/hosting/unavailable-after-white-hat-seo-hack-might-be-paying-off#article","url":"https://www.richeyweb.com/blog/hosting/unavailable-after-white-hat-seo-hack-might-be-paying-off","name":"unavailable_after White-Hat SEO Hack Might Be Paying Off","headline":"unavailable_after White-Hat SEO Hack Might Be Paying Off","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/unavailable_after/system-meta-robots-unavailable-after.webp","contentUrl":"https://www.richeyweb.com/images/articles/unavailable_after/system-meta-robots-unavailable-after.webp","width":{"@type":"QuantitativeValue","value":863,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":443,"unitCode":"PX"},"caption":"unavailable_after White-Hat SEO Hack Might Be Paying Off"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/blog/development/gpc-dnt-do-not-tracks-toothless-twin#article","url":"https://www.richeyweb.com/blog/development/gpc-dnt-do-not-tracks-toothless-twin","name":"GPC: DNT/Do Not Track’s Toothless Twin","headline":"GPC: DNT/Do Not Track’s Toothless Twin","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/dnt/dnt-headstone-thumbnail.webp","contentUrl":"https://www.richeyweb.com/images/articles/dnt/dnt-headstone-thumbnail.webp","width":{"@type":"QuantitativeValue","value":513,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":288,"unitCode":"PX"},"caption":"GPC: DNT/Do Not Track’s Toothless Twin"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}},{"@type":"Article","@id":"https://www.richeyweb.com/joomla-techniques/speed-up-your-joomla-workflow-with-a-custom-administrator-menu#article","url":"https://www.richeyweb.com/joomla-techniques/speed-up-your-joomla-workflow-with-a-custom-administrator-menu","name":"Speed Up Your Joomla Workflow with a Custom Administrator Menu","headline":"Speed Up Your Joomla Workflow with a Custom Administrator Menu","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/speed-up-your-joomla-workflow-with-a-custom-administrator-menu/custom-admin-menus.webp","contentUrl":"https://www.richeyweb.com/images/articles/speed-up-your-joomla-workflow-with-a-custom-administrator-menu/custom-admin-menus.webp","width":{"@type":"QuantitativeValue","value":1368,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":769,"unitCode":"PX"},"caption":"Speed Up Your Joomla Workflow with a Custom Administrator Menu"},"author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"}}],"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#article","isPartOf":{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#webpage"},"publisher":{"@id":"https://www.richeyweb.com/#organization"},"keywords":"Joomla, Lazy Scheduler, WebCron, cron, Joomla scheduler, scheduler:run, AJAX calls, browser freeze, network log, traffic dependency, server-side cron, concurrency, Joomla scheduler component, plg_system_schedulerunner plugin, client-side JavaScript, Joomla dev, local dev site, DevTools, Joomla how-to, performance issues, user experience, Joomla sites, scheduler:run CLI command, server-side execution, browser lockup, task execution, external services, secure URL, scheduled tasks, CLI jobs, CliApplication environment, task outcomes, Joomla admin panel, System, Manage, Plugins, setInterval, Joomla.","articleSection":"Hosting","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron","hasPart":[{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-the-unreliability-of-lazy-scheduler-and-webcron_2_1"},{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-lazy-scheduler-visitor-driven-instability_2_2"},{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-drawbacks_3_3"},{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-webcron-external-but-still-flawed_2_4"},{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-drawbacks_3_5"},{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-the-tried-and-true-solution-scheduler-run-with-cron_2_6"},{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-switching-to-cron_2_7"},{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-practical-considerations_2_8"},{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-conclusion_2_9"}]},{"@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex","@type":"ItemList","name":"Cron vs Joomla Lazy Scheduler and WebCron","numberOfItems":9,"itemListElement":[{"@type":"ListItem","position":1,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-the-unreliability-of-lazy-scheduler-and-webcron_2_1","name":"The Unreliability of Lazy Scheduler and WebCron","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#toc-the-unreliability-of-lazy-scheduler-and-webcron_2_1"}},{"@type":"ListItem","position":2,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-lazy-scheduler-visitor-driven-instability_2_2","name":"Lazy Scheduler: Visitor-Driven Instability","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#toc-lazy-scheduler-visitor-driven-instability_2_2"}},{"@type":"ListItem","position":3,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-drawbacks_3_3","name":"Drawbacks:","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#toc-drawbacks_3_3"}},{"@type":"ListItem","position":4,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-webcron-external-but-still-flawed_2_4","name":"WebCron: External but Still Flawed","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#toc-webcron-external-but-still-flawed_2_4"}},{"@type":"ListItem","position":5,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-drawbacks_3_5","name":"Drawbacks:","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#toc-drawbacks_3_5"}},{"@type":"ListItem","position":6,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-the-tried-and-true-solution-scheduler-run-with-cron_2_6","name":"The Tried and True Solution: scheduler:run with Cron","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#toc-the-tried-and-true-solution-scheduler-run-with-cron_2_6"}},{"@type":"ListItem","position":7,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-switching-to-cron_2_7","name":"Switching to Cron","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#toc-switching-to-cron_2_7"}},{"@type":"ListItem","position":8,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-practical-considerations_2_8","name":"Practical Considerations","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#toc-practical-considerations_2_8"}},{"@type":"ListItem","position":9,"item":{"@type":"WPHeader","@id":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#articleindex-toc-conclusion_2_9","name":"Conclusion","url":"https://www.richeyweb.com/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron#toc-conclusion_2_9"}}]}]}
```
