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

Purge taking too much time while editing a Post #257

Open
thecancerus opened this issue May 20, 2021 · 6 comments
Open

Purge taking too much time while editing a Post #257

thecancerus opened this issue May 20, 2021 · 6 comments

Comments

@thecancerus
Copy link

When editing a post with multiple tags and categories attached to it, it takes lots of time to update. Sometimes it can take more than a minute. When I investigated, I found that most of the time was taken in the purge requests ( anywhere between 500ms to 1.3seconds per request).

My Setup

WordPress 5.7, Nginx (based on WordOps), WPFC cache with PHP 7.4.
Server: AWS t2.xlarge, OS ubuntu 20.04
Neingx helper plugin version 2.2.2

The site is behind Cloudflare

@rahul286
Copy link
Member

@thecancerus looks like you are using WordOps for that https://community.wordops.net/ is the right place to look for support.

Since EE v4, we strongly recommend using Redis for full page cache.

Still, I will give a wild shot based on your use of WPFC cache.

You can try disabling the archive purge option (if its enabled)

Pasted_Image_20_05_21__1_16_PM

@thecancerus
Copy link
Author

@rahul286 thanks, we were using the purge archive settings. I will also explore the Redis cache and see how it goes.

@rahul286
Copy link
Member

Redis uses Lua so purging is very fast ➞ https://github.com/rtCamp/nginx-helper/blob/master/admin/class-predis-purger.php#L249-L258

You can uncheck archive checkboxes until you shift to redis-based full page cache.

@thecancerus
Copy link
Author

We need to purge archives as well, so for now we have modified the plugin to insert the URLs in a queue instead of doing a real-time purge, then handled the purge using cron.

Checking the dev setup with Redis Cache, we already use Redis for other things, mostly we will also move to Redis cache from wpfc cache.

@sashmarin
Copy link

sashmarin commented Jun 23, 2023

I would suggest this fix. But the repository seems private, I can't commit.
In my test case it speeds up Wordpress post saving from 9 seconds to 2 seconds.

--- a/admin/class-purger.php
+++ b/admin/class-purger.php
@@ -460,8 +460,12 @@ abstract class Purger {
                 * @param string $url URL to be purged.
                 */
                do_action( 'rt_nginx_helper_before_remote_purge_url', $url );
-
-               $response = wp_remote_get( $url );
+                
+                $request_args = array(
+                    'blocking' => false,
+                    'sslverify' => false
+                );
+               $response = wp_remote_get( $url, $request_args );

@AndrewKvalheim
Copy link

WordPress/wordpress-develop#3022 should help with this.

DeeKey added a commit to DeeKey/nginx-helper that referenced this issue Feb 26, 2024
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

4 participants