Using what I've learned working on the WordPress.com VIP platform, this presentation discusses caching techniques applicable to WordPress installations of almost any size.
Presented November 28, 2011 at the Boston WordPress Meetup.
Launching a WordPress Site 101 (Cincinnati WordPress, August 2015)Andrew Duthie
This is the first of a two-part series covering common and best practices around launching a new WordPress site to your web host. While this first session is slightly more introductory, it still covers some of the more technical aspects of moving files and databases. Topics covered include:
• Determining what needs to be moved to your web host
• Prerequisites for migrating your site (tools, credentials)
• Differences between site files (themes, uploads) and content (database)
• Required changes if the domain name has changed
The discussion was concluded with a short demonstration.
While this is handy information for developers who build sites locally, the hope is that there is useful information for those who find themselves needing to move a site from one web host to another.
--
Credits for slide graphics to Wilson Joseph, Noun Project
SenchaCon 2016: How to Auto Generate a Back-end in Minutes - Per Minborg, Emi...Sencha
Connecting your JavaScript application to a database is tedious. Back-end developers spend hours modeling the database, securing connections, writing SQL, optimizing queries, deploying to a server, and fixing bugs. In this session, you'll learn how Ext Speeder gives your front-end team a tool to automatically generate a full back-end. In minutes, a REST API between a Sencha Ext JS Grid application and a relational database is created. This will save you a huge amount of time and also minimizes the risk of human error. Application time-to-market has never been shorter.
Launching a WordPress Site 101 (Cincinnati WordPress, August 2015)Andrew Duthie
This is the first of a two-part series covering common and best practices around launching a new WordPress site to your web host. While this first session is slightly more introductory, it still covers some of the more technical aspects of moving files and databases. Topics covered include:
• Determining what needs to be moved to your web host
• Prerequisites for migrating your site (tools, credentials)
• Differences between site files (themes, uploads) and content (database)
• Required changes if the domain name has changed
The discussion was concluded with a short demonstration.
While this is handy information for developers who build sites locally, the hope is that there is useful information for those who find themselves needing to move a site from one web host to another.
--
Credits for slide graphics to Wilson Joseph, Noun Project
SenchaCon 2016: How to Auto Generate a Back-end in Minutes - Per Minborg, Emi...Sencha
Connecting your JavaScript application to a database is tedious. Back-end developers spend hours modeling the database, securing connections, writing SQL, optimizing queries, deploying to a server, and fixing bugs. In this session, you'll learn how Ext Speeder gives your front-end team a tool to automatically generate a full back-end. In minutes, a REST API between a Sencha Ext JS Grid application and a relational database is created. This will save you a huge amount of time and also minimizes the risk of human error. Application time-to-market has never been shorter.
SenchaCon 2016: Building a Faceted Catalog of Video Game Assets Using Ext JS ...Sencha
At Ubisoft Technology Group, we've created a platform for video game production to share game assets, in-game footage, and animations across the entire company. Ease of search and good UX were incredibly important for an audience of artists and creative types. This is where the Web and a powerful JavaScript framework came in; we chose Ext JS for its robustness and scalability. In this session, we'll showcase two different applications and dive into the technical aspects of designing the UI for a faceted search based on Elasticsearch.
This presentation is just the showcase for the book that I authored with PACKT publication.
This presentation shows what all tiips/techniques we have covered to make our website more optimized for faster response using existing tools, codes and methods.
Memcached: What is it and what does it do?Brian Moon
Memcached has become the de facto standard for caching web applications. But, many users jump in feet first without understanding what it does or perhaps more importantly what it does not do. Once you understand memcached, you may come to realize that it is what it does not do that makes it so good.
Memcached is a distributed memory based caching system. But, what does that mean for you? This session will cover the basics of memcached. What are all the components needed? Where is your data cached? What happens when there is a system failure? Is my data stored in more than one place? How do I know what is in my cache? All these questions and more will be answered.
In today’s systems , the time it takes to bring data to the end-user can be very long, especially under heavy load. An application can often increase performance by using an appropriate caching system. There are many caching level that you can use in our application today : CDN, In-Memory/Local Cache, Distributed Cache, Outut Cache, Browser Cache, Html Cache
Caching is a technique to save frequently used data into into temporary location. Improves application performance. Reduce a lot of server resources at peak times.
This talk covers ways to make your site run faster regardless of your hosting provider or host type as well as some of the commonly used plugins and caching strategies. The fucus is on RAM or the use of a Managed WordPress hosting that is already optimized for you.
Powerpoint file(incl. animations!): http://db.tt/oQiXb9lq
This is the slides of the presentation "Wordpress optimization" who presented at WordCamp 2013.
How to improve your wordpress performance and speed up your website more than 700% faster!
What's the easiest way to make Stash more useful for your team? Extend it. Get the details on how to hack Stash with merge conditions, pre- and post-receive hooks, and more from Stash full stack developer Jason Hinch.
My talking points for the presentation on optimization of modern web applications. It is a huge topic, and I concentrated mostly on technical aspects of it.
Keeping web servers safe and profitable with Imunify360CloudLinux
Imunify360 is the next-generation Linux Web server security solution. It uses herd immunity and the 6-layer approach providing total protection against attacks.
SenchaCon 2016: Building a Faceted Catalog of Video Game Assets Using Ext JS ...Sencha
At Ubisoft Technology Group, we've created a platform for video game production to share game assets, in-game footage, and animations across the entire company. Ease of search and good UX were incredibly important for an audience of artists and creative types. This is where the Web and a powerful JavaScript framework came in; we chose Ext JS for its robustness and scalability. In this session, we'll showcase two different applications and dive into the technical aspects of designing the UI for a faceted search based on Elasticsearch.
This presentation is just the showcase for the book that I authored with PACKT publication.
This presentation shows what all tiips/techniques we have covered to make our website more optimized for faster response using existing tools, codes and methods.
Memcached: What is it and what does it do?Brian Moon
Memcached has become the de facto standard for caching web applications. But, many users jump in feet first without understanding what it does or perhaps more importantly what it does not do. Once you understand memcached, you may come to realize that it is what it does not do that makes it so good.
Memcached is a distributed memory based caching system. But, what does that mean for you? This session will cover the basics of memcached. What are all the components needed? Where is your data cached? What happens when there is a system failure? Is my data stored in more than one place? How do I know what is in my cache? All these questions and more will be answered.
In today’s systems , the time it takes to bring data to the end-user can be very long, especially under heavy load. An application can often increase performance by using an appropriate caching system. There are many caching level that you can use in our application today : CDN, In-Memory/Local Cache, Distributed Cache, Outut Cache, Browser Cache, Html Cache
Caching is a technique to save frequently used data into into temporary location. Improves application performance. Reduce a lot of server resources at peak times.
This talk covers ways to make your site run faster regardless of your hosting provider or host type as well as some of the commonly used plugins and caching strategies. The fucus is on RAM or the use of a Managed WordPress hosting that is already optimized for you.
Powerpoint file(incl. animations!): http://db.tt/oQiXb9lq
This is the slides of the presentation "Wordpress optimization" who presented at WordCamp 2013.
How to improve your wordpress performance and speed up your website more than 700% faster!
What's the easiest way to make Stash more useful for your team? Extend it. Get the details on how to hack Stash with merge conditions, pre- and post-receive hooks, and more from Stash full stack developer Jason Hinch.
My talking points for the presentation on optimization of modern web applications. It is a huge topic, and I concentrated mostly on technical aspects of it.
Keeping web servers safe and profitable with Imunify360CloudLinux
Imunify360 is the next-generation Linux Web server security solution. It uses herd immunity and the 6-layer approach providing total protection against attacks.
You already know that CloudLinux OS makes your servers more stable and secure, but do you know how to configure it to perform best? In this webinar recording, Bogdan Shyshka discusses how to set and optimize CloudLinux OS limits and what they really mean. He goes over the dangers of low or high limits, defaults and starting points, and shares some tips and tricks that can help you maximize your server performance.
Video recordings: https://cloudlinux.com/cloudlinux-academy
Go through the result of our latest large-scale study about Docker usage in real environment. Analyze and see the impact for operations and monitoring.
How lve stats2 works for you and your customersCloudLinux
LVE Stats2 is a complete re-write of our customer’s statistics module in CloudLinux OS. It features more detailed charts, flexible architecture, and ability to extend the functionality. In this presentation, Igor Seletskiy, our CEO, discusses LVE Stats2.
Here, Igor Seletskiy, our CEO, shows the new LVE Manager User Interface. The new interface unifies control over all parts of CloudLinux OS functionality into one place and makes it easy and convenient for administrators to manage it.
Supercharging your PHP pages with mod_lsapi in CloudLinux OSCloudLinux
We’ve got big news - mod_lsapi is the fastest and most reliable way to serve PHP pages with Apache. It is a drop-in replacement for SuPHP, FCGID, RUID2, and ITK, has a low memory footprint and understands PHP directives from .htaccess files. It also supports PHP accelerators. It is fully compatible with PHP Selector, which allows end users to select the specific version of PHP they need. Here, learn more about this new production-ready feature, how it works and why it is so powerful.
Memcached or Redis? It's a question that nearly always arises in any discussion about squeezing more performance out of a modern, database-driven Web application. When performance needs to be improved, caching is often the first step employed, and Memcached and Redis are typically the first places to turn.
Monitoring NGINX (plus): key metrics and how-toDatadog
NGINX just works and that's why we use it. That does not mean that it should be left unmonitored. As a web server, it plays a central role in a modern infrastructure. As a gatekeeper, it sees every interaction with the application. If you monitor it properly it can explain a lot about what is happening in the rest of your infrastructure.
In this talk you will learn more about NGINX (plus) metrics, what they mean and how to use them. You will also learn different methods (status, statsd, logs) to monitor NGINX with their pros and cons, illustrated with real data coming from real servers.
A granular look into The Do's and Don't of Post Incident Analysis, featuring Jason Hand - DevOps Evangelist - from VictorOps and Jason Yee - Technical Writer/Evangelist - from Datadog.
Topics include a breakdown of the process in the following order:
- Service disruptions
- Detection
- Diagnosis
- Post-incident analysis
- Framework
Chaos patterns - architecting for failure in distributed systemsJos Boumans
As we architect our systems for greater demands, scale, uptime, and performance, the hardest thing to control becomes the environment in which we deploy and the subtle but crucial interactions between complicated systems. Chaos Patterns help us establish and implement a virtuous cycle that let’s us both prove & improve our system along each of these dimensions before the inevitable happens.
While it may seem reckless or counter-intuitive, our experience has proven that it’s a matter of how and when (not if) we will learn about the limitations and failure modes of the system.
This is the story of the pitfalls we encountered, and how, through architecture, convention and common sense, we managed to build an infrastructure that is "Always Up" from the end user perspective and incredibly economical to build, scale & operate; using chaos testing, we learn more about how our system fails from a 10 second controlled failure than a multi-hour uncontrolled outage.
In this session we will cover various implementation techniques, available to any developer & operator, which will vastly increase the resilience of your systems and provide a superior end user experience; from optimizing your use of DNS for failure, to configuring your CDN to have your back, to synthetic responses and expected database outages.
But why stop there? Netflix has pioneered a culture and suite of tools that actively injects ‘once in a blue moon’ failures into its production systems, which lets you battle test your resilience design and let developers & operators sleep comfortably at night knowing their systems are able to handle even the worst of worst case scenarios.
How to measure everything - a million metrics per second with minimal develop...Jos Boumans
Krux is an infrastructure provider for many of the websites you
use online today, like NYTimes.com, WSJ.com, Wikia and NBCU. For
every request on those properties, Krux will get one or more as
well. We grew from zero traffic to several billion requests per
day in the span of 2 years, and we did so exclusively in AWS.
To make the right decisions in such a volatile environment, we
knew that data is everything; without it, you can't possibly make
informed decisions. However, collecting it efficiently, at scale,
at minimal cost and without burdening developers is a tremendous
challenge.
Join me in this session to learn how we overcame this challenge
at Krux; I will share with you the details of how we set up our
global infrastructure, entirely managed by Puppet, to capture over
a million data points every second on virtually every part of the
system, including inside the web server, user apps and Puppet itself,
for under $2000/month using off the shelf Open Source software and
some code we've released as Open Source ourselves. In addition, I’ll
show you how you can take (a subset of) these metrics and send them
to advanced analytics and alerting tools like Circonus or Zabbix.
This content will be applicable for anyone collecting or desiring to
collect vast amounts of metrics in a cloud or datacenter setting and
making sense of them.
In this talk, we'll cover all the great built-in rails caching options and best practices for getting the most out of these. Then we'll talk about dynamic content, why it's traditionally not cached, and how you can can cache it using this thing called "edge caching".
Welcome to the future, where you can cache the uncacheable.
When it comes to caching, there are two types of web developers - those with phat stacks of cache money and those suffering from cache anxiety. Caching is particularly handy when scaling Rails apps, however we often avoid putting in effort because it can quickly get complicated without effective strategies. Rails provides a host of built-in caching interfaces that are easy to leverage and extend. I’ll talk about how to do this and combine rails with technologies like CDNs and HTTP accelerators like Varnish so that you can more effectively cache everything, everywhere without fear of serving stale content.
Michael May is an API Engineer at Fastly and a former Austinite, now hailing from San Francisco. While in Texas he studied at UT Austin and co-founded CDN Sumo, which was acquired by Fastly. He’s waiting for the day when FaaS (Franklin BBQ as a Service) becomes a thing and dreams about fast websites.
Modernizing WordPress Search with ElasticsearchTaylor Lovett
WordPress search is notoriously lacking. Using Elasticsearch and the 10up WordPress plugin ElasticPress, we can do amazing things with search very performantly.
Presentation to YYC Bloggers Meetup on Plugins and Securing WordPress.
Geared to the beginner/average user. A presentation and discussion about the basic steps to better manage your WordPress site/blog.
This workshop conducted by the team member of Inspire Chittagong (Mizanur Rahaman Mizan and Saad Amin). Workshop was in East Delta Univeristy. There was a session relating to the infos and also another one fully focusing on the practical theme development
Pour ce second talk de la saison, nous allons nous intéresser à Wordpress et à son usage en tant que plateforme de développement. Cette présentation va vous donner les clés pour adapter votre workflow de développement avec ce CMS et vous permettre d’aller plus loin que son système de blogging de base.
Enhancing Performance with Globus and the Science DMZGlobus
ESnet has led the way in helping national facilities—and many other institutions in the research community—configure Science DMZs and troubleshoot network issues to maximize data transfer performance. In this talk we will present a summary of approaches and tips for getting the most out of your network infrastructure using Globus Connect Server.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Welcome to the first live UiPath Community Day Dubai! Join us for this unique occasion to meet our local and global UiPath Community and leaders. You will get a full view of the MEA region's automation landscape and the AI Powered automation technology capabilities of UiPath. Also, hosted by our local partners Marc Ellis, you will enjoy a half-day packed with industry insights and automation peers networking.
📕 Curious on our agenda? Wait no more!
10:00 Welcome note - UiPath Community in Dubai
Lovely Sinha, UiPath Community Chapter Leader, UiPath MVPx3, Hyper-automation Consultant, First Abu Dhabi Bank
10:20 A UiPath cross-region MEA overview
Ashraf El Zarka, VP and Managing Director MEA, UiPath
10:35: Customer Success Journey
Deepthi Deepak, Head of Intelligent Automation CoE, First Abu Dhabi Bank
11:15 The UiPath approach to GenAI with our three principles: improve accuracy, supercharge productivity, and automate more
Boris Krumrey, Global VP, Automation Innovation, UiPath
12:15 To discover how Marc Ellis leverages tech-driven solutions in recruitment and managed services.
Brendan Lingam, Director of Sales and Business Development, Marc Ellis
2. Why Should You Care About
Anything I Have to Say?
Erick Hitter
Lead WordPress developer with Oomph!
@ethitter
http://www.ethitter.com
http://www.thinkoomph.com
Disclaimer: I started this in Google Docs, then had to switch to
PowerPoint, which explains some of the wonky formatting.
3. Caching
• Serving static content to a visitor rather than
something generated upon request.
• Two major types in WordPress context:
o Page
Whole page is static and, therefore, could be
outdated.
o Fragment
Cache pieces of a page rather than the entire
page.
7. WordPress' Native Caching APIs
Transients Object Cache
• Persistent out of the box • Not persistent without a
• Stored in wp_options: plugin, such as W3 Total
Cache
_transient_{key}
• WordPress uses for • Storage depends on
server's and plugin's
certain internal functions
• set_, get_, and
•
capabilities
Used extensively within
delete_transient()
WordPress
• Cache objects can be
grouped
• wp_cache_add(), _set, _g
et, _delete
8. Fragment Caching Basics: Creating
• wp_cache_get() returns a boolean false if the requested cache isn't
set or has expired.
• Everything that is to be cached must be accessible via a function that
returns its results rather than echoing them, otherwise output
buffering is needed.
• wp_cache_add() will not overwrite an existing, unexpired
cache, whereas wp_cache_set() does.
9. Fragment Caching Basics: Clearing
Thisabove example clears a cache when anything is published or something
that is published is modified. The "something" could be a post, page, or
custom post type object.
If, instead, the cache should be rebuilt when the same event
occurs, wp_cache_delete() could be replaced with generate_cached_output().
10. Unpredictable Keys
• Object caching doesn’t provide a way to clear
all caches in a given group.
• Therefore, if the cache key is
unpredictable, how can we clear it?
• For example, a list of recent posts to be
displayed on an individual post, but that
excludes the current post.
13. Unpredictable Keys: Cached Array
Pros Cons
• Cache can easily be • Object caching
cleared because a single configuration may limit size
object with a predictable of individual cache objects.
key is set. • Array corruption could
• Cache is only rebuilt if invalidate an entire cache
specific post ID/quantity object.
key is absent from array. • Array can become bloated
• Better for cache elements if different quantities are
that are reliably small. used simultaneously.
• Allows for checking
existence of various
keys, such as in a loop.
15. Where We Use Fragment Caching
• Custom loops
• Anytime a lot of data must be retrieved from WordPress
and parsed.
• Most situations where WP_Query generates a subquery
outside of the main query.
• Almost anything that is reused across multiple pages.
16. category__not_invspost__not_in
SELECT … WHERE 1=1 ANDwp_posts.ID NOT IN (
SELECT tr.object_id FROM wp_term_relationships
AS tr INNER JOIN wp_term_taxonomy AS tt ON
tr.term_taxonomy_id = tt.term_taxonomy_id WHERE
tt.taxonomy = 'category' AND tt.term_id IN
('167') ) …
18. category__not_invspost__not_in
SELECT … WHERE 1=1 ANDwp_posts.ID NOT IN (
SELECT tr.object_id FROM wp_term_relationships
AS tr INNER JOIN wp_term_taxonomy AS tt ON
tr.term_taxonomy_id = tt.term_taxonomy_id WHERE
tt.taxonomy = 'category' AND tt.term_id IN
('167') ) …
SELECT … WHERE 1=1 ANDwp_posts.ID NOT IN (
'1','2','3','4','5' ) …
21. Menu Caching: Keys & Clearing
• get_queried_object_id() returns an integer representing
the post ID or term ID.
• Front page and custom post type archives return 0.
• Menu caches must be cleared when four different
actions fire to ensure consistency:
o wp_update_nav_menu
o wp_update_nav_menu_item
o wp_delete_nav_menu
o wp_setup_nav_menu_item
22. query_posts() vspre_get_posts
query_posts() pre_get_posts
• Function provided to • Action used to modify
modify main query. any query.
• Runs after main query • Runs before every query
has already executed. executes.
23. How Does This Factor Into Our Work
On WordPress.com VIP?
• Page caches only last for five minutes.
• No page caching for logged-in users.
• Sites that publish with great frequency trigger regular
invalidations of homepage and category pages.
• Web servers outnumber database servers.
• Want to know more about WordPress.com
infrastructure? Check out http://goo.gl/lYpJH.
To clear, must know both post ID and quantity originally requested.
WordPress.com permits caches no larger than 1MB.Array of related posts for site with lots of content can exceed that easily.For VentureBeat, certain ad options are cached into an array so that a default can be provided.
Overcomes the limitations of array cache objectDeleting incrementor invalidates any existing caches, which will be pushed out of the object cache over time.
Custom loops – InvestorPlace Press CenterData retrieval – CACHE WRAPPERS FOR WORDPRESS FUNCTIONS - term data, including term objects and, especially, term relationships - large blocks of post meta - certain uses of user meta - show VentureBeat/functions/misc.php lines 1432 - 1488Subqueries – excluding taxonomy terms. Will cache data that subquery produces and pass through post__not_in or post__in when possible.Reusable – widgets, menus, common header or footer elements (VentureBeat)
Eliminates subquery and its two joinsDropped execution time from roughly 45ms to 30ms.Caching imparts additional performance increase
Menu items exist as objects in wp_posts table, organized by the nav_menu taxonomy.Since menu items are in a taxonomy, all taxonomy tables must be joined to posts table to retrieve menu items.If active menu states are unnecessary, the output or wp_nav_menu() can be cached directly.
If using custom post types, must create own unique identifierCan add previously-discussed cache incrementor if invalidation is necessary.
query_posts() discards a query without using it, then runs a new query. Unnecessarily inefficient.Not intended for creating new loops.
First three in context of fragment caching for complex items such as VB menus and footer elementsWeb servers in context of reducing subqueriesWordPress.com infrastructure 1,500+ servers in 3 data centers 25 million sites 2 petabytes of storage 100% using nginxBatcache for page cachingMemcached for object caching Almost all database and caching servers use SSDs.