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%
WP Performance
WP Performance makes your WordPress site load faster without the headache. Turn on a few options and the plugin handles caching, asset optimization, and image delivery for you. Not sure where to start? Open the Overview tab and pick a one-click preset (Safe, Balanced, or Aggressive). You can fine-tune anything afterwards. Version 2.0 is a complete rebuild with a fast new dashboard and no third-party dependencies. Everything below works together out of the box. Caching Page cache – serves a static HTML copy of each page, before WordPress even loads Block cache – cache just the slow parts of a page, even on pages you can’t fully cache (more below) Cache preloading – warm the cache from your sitemap Browser caching – tells browsers to keep files so repeat visits are instant GZIP compression – sends smaller files to the browser Object cache – optional Redis drop-in to cut database load Smart by default – skips logged-in users and WooCommerce/EDD cart pages, and ignores tracking parameters (utm, gclid, fbclid) so clean URLs share one cache Mobile cache – keep a separate copy for mobile devices when you need it CSS Minify CSS (inline and files) Combine CSS files Load CSS without blocking the page Remove unused CSS, per page Critical CSS Combine Google Fonts, or host them on your own server Control font loading (font-display) DNS prefetch and preconnect hints JavaScript Minify JavaScript (inline and files) Combine JavaScript files Defer JavaScript Delay JavaScript until the visitor interacts (great for third-party scripts) Disable scripts you don’t need, site-wide or per page HTML Minify HTML Remove comments and unneeded markup Images and media Lazy load images and videos (uses native browser lazy loading) Responsive images Add missing width and height to stop layout shift (better CLS) Preload your largest image and set fetchpriority for a faster LCP Convert images to WebP and AVIF Custom image sizes and one-click thumbnail regeneration Disable emojis and embeds Database Clean up revisions, auto-drafts, trash, spam, transients, and stale cron tasks Schedule cleanups daily, weekly, or monthly CDN Rewrite asset URLs to your CDN, with exclusions Tools Overview dashboard with environment health checks One-click presets – Safe, Balanced, Aggressive Restore points – roll back to your last five saved configurations Troubleshooting log with a live viewer Export and import your settings Per-page exclusions from the post editor WP-CLI commands Multisite support Block cache Block cache stores the rendered output of a section of a page and reuses it, even on pages that are not fully cached (like logged-in or dynamic pages). Use it three ways: Cache block – add the “Cache” block in the editor and put any blocks inside it Shortcode – [wpp_cache ttl="600"]...[/wpp_cache] PHP – in a template: if ( wpp_cache_start( ‘sidebar’, [ ‘ttl’ => 3600 ] ) ) { expensive_render(); wpp_cache_end(); } You choose how long to cache and whether to keep a separate copy per page, per device, per role, or for logged-in visitors. Add-ons Cloudflare – purge cache and control Cloudflare settings Varnish – auto-purge Varnish cache Prefetch – prefetch links on hover for instant navigation WP-CLI wp wpp flush – clear the page cache wp wpp flush-blocks – clear the block cache wp wpp enable – enable WP Performance wp wpp disable – temporarily disable WP Performance wp wpp cleanup [ ] – run a database cleanup (all, trash, spam, revisions, autodrafts, transients, cron) Languages English Hrvatski (Croatian) Report bugs Found a bug? Please open an issue on GitHub.