SQLite Object Cache
A persistent object cache helps your site perform well. This one uses the widely available SQLite3 extension, and optionally the igbinary and APCu extensions to php. Many hosting services offer those extensions, and they are easy to install on a server you control. What is this about? It’s about making your site’s web server perform better. An object cache does that by reducing the workload on your MariaDB or MySQL database. This is not a page cache; these persistent objects go into a different kind of cache. These objects aren’t chunks of web pages ready for people to view in their browsers, they are data objects for use by the WordPress software. Caches are ubiquitous in computing, and WordPress has its own caching subsystem. Caches contain short-term copies of the results of expensive database lookups or computations, and allow software to use the copy rather than repeating the expensive operation. This plugin (like other object-caching plugins) extends WordPress’s caching subsystem to save those short-term copies from page view to page view. WordPress’s cache happens to be a memoization cache. Without a persistent object cache, every WordPress page view must use your MariaDB or MySQL database server to retrieve everything about your site. When a user requests a page, WordPress starts from scratch and loads everything it needs from your database server. Only then can it deliver content to your user. With a persistent object cache, WordPress immediately loads much of the information it needs. This lightens the load on your database server and delivers content to your users faster. Who should use this? If your site runs on a single web server machine, and that server provides the SQLite3 and igbinary extensions to php, this plugin will almost certainly make your site work faster. And if that server provides the APCu extension, this plugin uses it too. Some hosting providers offer redis cache servers. If your provider offers redis, it may be a good choice. You can use it via the Redis Object Cache plugin. Sites using redis have one SQL database and another non-SQL storage server: redis. Other hosting providers offer memcached, which has the Memcached Object Cache plugin. And some large multipurpose cache plugins, such as the LiteSpeed Cache, also offer object caching based on one of those cache server software packages. The cache-server approach to object caching comes into its own when you have multiple load-balanced web server machines handling your site. SQLite doesn’t work correctly in a multiple-web-server environment. But, for single-server site configurations, SQLite, possibly assisted by APCu, performs well. And the vast majority of sites are single-server. APCu APCu is an in-memory storage medium. It lets php programs, like WordPress, store data in shared memory so it’s very fast to retrieve when needed. If APCu is available on your host server, you can configure this plugin to use it. It reduces the typical cache lookup time to one-fifth or less of the SQLite lookup time, which is itself a few tens of microseconds. Performance counts, especially on busy web sites. Please look at Installation to learn how to configure this plugin to use APCu. The plugin works fast without it, and faster with it. WP-CLI: Even if APCu is in use, caching with SQLite is necessary when your web site uses WP-CLI, because WP-CLI programs do not have access to the APCu cache. This plugin writes all cached data both to APCu and to SQLite and makes sure the two are synchronized. WP-CLI You can control this plugin via WP-CLI once you activate it. Please type this command into your shell for details. wp help sqlite-object-cache Credits Thanks to Till Krüss. His Redis Object Cache plugin serves as a model for this one. And thanks to Ari Stathopoulos and Jonny Harris for reviewing this. Props to Matt Jones for finding and fixing a bug that appeared on a heavily loaded system. Thanks to Massimo Villa for testing help, and to nickchomey for a comprehensive code review. All defects are, of course, entirely the author’s responsibility. And thanks to Jetbrains for the use of their software development tools, especially PhpStorm. It’s hard to imagine how a plugin like this one could be developed without PhpStorm’s tools for exploring epic code bases like WordPress’s. How can I learn more about making my WordPress site more efficient? We offer several plugins to help with your site’s database efficiency. You can read about them here.
Top keywords
- cache17×2.27%
- server12×1.60%
- apcu10×1.33%
- site10×1.33%
- wordpress10×1.33%
- object9×1.20%
- database7×0.93%
- object cache7×0.93%
- redis6×0.80%
- web6×0.80%
- caching5×0.67%
- offer5×0.67%
Warmer – Cache Warmer and Cache Preload Crawler
Warmer is a WordPress cache warmer and cache preload crawler that visits your site URLs on a schedule so page cache can be generated before real visitors arrive. Most caching plugins create cached pages only after a URL is requested. That means the first visitor after a cache purge, cache expiration, deployment, or content update may hit a slower uncached page. Warmer helps solve that cold-cache problem by crawling selected URLs in the background and warming the cache ahead of time. Use Warmer to warm posts, pages, archives, media attachment pages, and supported custom post types. You control the schedule, URL sources, request delay, timeout behavior, and diagnostics from the WordPress admin. What Warmer does Warms page cache by visiting selected site URLs Preloads cache on a schedule using WordPress cron Crawls posts, pages, category archives, tag archives, media attachment pages, archives, and supported custom post types Provides manual start and stop controls Shows crawl status, success counts, failure counts, and downloadable logs Includes diagnostics for HTTP requests, URL sources, scheduler status, and server compatibility Supports automation workflows with webhooks and WP-CLI Saves settings automatically with Ajax and top-right confirmation notices Works alongside caching systems that build cache when a page is requested Why use a cache warmer? A caching plugin can make cached pages fast, but the cache usually needs to exist first. After a purge or expiration, the first real visitor may be the one who triggers cache generation. Warmer creates those first visits automatically, helping reduce cold-cache page loads and keeping important URLs ready for visitors. Warmer is useful after: Cache purges or cache expiration Publishing or updating content Theme, plugin, or deployment changes Low-traffic periods where pages may fall out of cache Scheduled maintenance Landing page, archive, and custom post type updates URL sources Choose which parts of your site should be warmed: Posts Pages Category archives Tag archives Media attachment pages Archive pages Supported custom post types Request controls Fine-tune cache warming behavior for your hosting environment: Page timeout Connection timeout Request delay Retry attempts User-Agent override Redirect handling SSL certificate verification Manual start and stop controls URL source testing Start with conservative delay and timeout settings, then adjust based on your server response time, cache behavior, and hosting limits. Logging and diagnostics Warmer includes visibility tools so you can understand what happened during each cache warming run: Crawl status tracking Success, failure, redirect, average time, and last-run statistics Structured log rows with status badges Log filters for errors, warnings, success, and redirects Search by URL, status, or message Downloadable logs Clear log history with confirmation System information Source testing Schedule status HTTP request diagnostics Compatibility Warmer is cache-plugin agnostic. It works with caching plugins, server caches, reverse proxies, and CDN/page cache layers that generate cache when a URL is visited. Common setups include: LiteSpeed Cache WP Rocket W3 Total Cache WP Super Cache NGINX FastCGI cache Varnish and reverse proxy caches CDN/page cache layers configured to cache visited pages Warmer does not replace your caching plugin. It helps your existing cache layer stay warm by requesting the pages you choose. Developer and automation features WP-CLI support for command-line cache warming workflows Webhook support for deployment and publishing workflows Diagnostics for testing URL sources and scheduler behavior Logs that make cache warming easier to monitor and debug Best use cases Warmer is built for site owners, developers, agencies, and performance-focused WordPress teams who want to reduce cold-cache page loads. It is especially helpful for: Business websites Blogs and publishers WooCommerce product pages and category pages when custom post type warming is enabled Membership and LMS sites with cacheable public content Sites using full-page cache Sites with scheduled cache expiration Sites where important pages should stay fast after cache purges