Jump to content

Archived

This topic is now archived and is closed to further replies.

achim

CSS Compile Time and Varnish Cache on WP Engine

Recommended Posts

achim

Dear everybody.

 

We are using pagelines in an WPEngine environment that is cached by a varnish.

Whenever an editor makes a change eg on the home page the less will be re-compiled, which takes up to a few seconds.

What we witness then nearly every time is that the page references css that point to a 404, which makes the entire page unusable of course.

This lasts until the cache-age expires which is in our case 10 looong minutes :)

If we re-publish the page the problem is gone (most times or it re-happens).

 

Just trying to understand, maybe this is what happens:

I didn't find a pattern of how compiles-css files are stored or deleted. e.g. yesterday we published a couple of changes and there is no css file in the uploads directory from yesterday but many from last month etc.

I think the process might be like so:

1. I publish a page

2. the old css is deleted

3. in the meantime the page is broken and will be cached with 404 css references

4. then new css is re-compiled and saved to the uploads dir

5. the reference to the new css is saved to the database

6. after 10 minutes (cache-age expired) the new css is available

 

If this is the case pagelines doesn't support varnish - am I right?

Pls. let us know how to proceed. We have a large print campaing leading traffic to our site and it's broken as soon as we edit a thing.

 

Thanks in advance 

Best regards

Achim Koellner

Share this post


Link to post
Share on other sites
Danny

Hi Achim,

Have you gone to DMS Toolbar > Site Settings > Reset and clicked Flush Caches ?


Please search our forums, before posting!

Share this post


Link to post
Share on other sites
achim

I know what flush does but that doesn't help with the problem that for a short period (seconds) the page is pointing to css-files that are already deleted. I cannot ask all editor to do a flush each time they publish a page.

Is there an option to not delete old css-files? That would be a fix as well, I'd prefer cleaning up expired css-builds myself.

Share this post


Link to post
Share on other sites
achim

Or can anybody tell where the compile process happens? less.compiler is involved of course but is ther kind of a task runner that manages the steps described above?

Share this post


Link to post
Share on other sites
Simon

Maybe you have a plugin that is messing about with the save actions?

WPENGINE clears its varnish cache whenever any of these actions are triggered:

'clean_post_cache','trashed_post', 'deleted_post',' 'edit_post', 'publish_page', 'publish_post', 'save_post'

I have just created a site on WPE, uploaded latest DMS2, created a new post, clicked publish and in another browser refreshed the site, post appeared, css is still intact.

The CSS should only get reset and deleted when you click publish in the DMS editor, and i checked that and that works as well using the production not staging area of WPE

 

Actually, I sit corrected, I tweaked the code, and now it woks again. Update is in the works.

Share this post


Link to post
Share on other sites
achim

Hi _Simon_,

thank you, and yes, I guess if I publish a page with the dms publish button, the "publish_page" action is triggered, which seems to force WPEngine to purge the varnish cache, which is great.

But after it seems to still take some time to create the new css and store the reference to the new css url, maybe just 2 seconds but enough time to let another user have a cache-MISS. That MISSed page - eg. the homepage - will be broken until the cache expires, depending on the cache-age settings. In this case 10 minutes. So if we publish 10 page edits (no matter what page) a day, we run into danger of having a broken homepage for 10x10 minutes a day.

The only option is re-purging the WPEngine cache each time we publish something. 

Best regards

Achim

Share this post


Link to post
Share on other sites
Simon

Did you try the new version?

Share this post


Link to post
Share on other sites
achim

Hi _Simon_,

what version? Or...where can I find it?

Best

Achim

Share this post


Link to post
Share on other sites
Simon

If you have the updater, it should show up under WP updates, alternatively you can download directly from your my-account page 

Share this post


Link to post
Share on other sites

  • Similar Content

    • Michael Kummer
      By Michael Kummer+
      Hi guys!
      I have noticed that my primary sidebar becomes intermittently invisible when browsing through various blog articles on michaelkummer.com/blog.
      See:
      https://www.dropbox.com/s/z646sgoa3mfjl1j/Screenshot 2018-07-12 15.57.46.jpg?dl=0 and https://www.dropbox.com/s/vdledzzgginvwgv/Screenshot 2018-07-12 15.57.57.jpg?dl=0
      Upon refresh, the sidebar appears. I have been using the following CSS code to hide the sidebar on mobile without any issues. 
      @media only screen and (max-width: 993px) {
      /* hide sidebars */
           .plsb {
              display: none !important;
          }
      }
      I tried to add the following CSS to force the sidebar to show on screens that are wider than 994 pixels but to no avail. Any clue what could be causing this issue?
    • Michael Kummer
      By Michael Kummer+
      Hi guys!
      I am using the LESS/CSS Pagelines extension and tried to add the following code to make use of FontAwesome:
      a.c2a:before {
          content: "\f07a\00a0";
          font-family: "Font Awesome 5 Pro";
          Font-weight: 900;
          font-style: normal;
          font-weight: normal;
          text-decoration: inherit;
          padding-left: 4px;
      }
       
      The issue is that as soon as I have the CSS via the Custom Styling text box, Pagelines (or the extension) strips out the backslashes (\). As a result, I had to abandon the CSS/LESS extension and instead add all my CSS code to a separate .css file.
      Is there a fix or workaround for this?
      Thanks
      Michael
    • glyph.marketing
      By glyph.marketing+
      Hello, I am having a problem similar to that experienced by Michael Kummer here. We have pages that show this automatic scrolling issue (examples here and here) and it is sufficiently annoying that we have seen customers bounce while trying to convert. Strangely, it only happens at specific resolutions, so it can be difficult to reproduce. In general we can only consistently reproduce it on a 4k resolution with a browser width between 1517 and 1536px. 
      Thanks to Michael Kummer's help we were able to set the overflow-anchor property to none in the entire body, which fixed the issue as far as we can tell, but also obviously disabled scroll anchoring for the whole site. I tried applying it to the specific element that looked like it was being reloaded, which was the PL Meganav extension, but that was unsuccessful. 
      Can anyone help us figure out which element or ID we can apply this property to, so that we can fix the scrolling issue but not disable scroll anchoring for the entire site?
      Thank you - 
      Glyph Language Services
    • chamois_blanc
      By chamois_blanc+
      Hello,
      Shouldn't the image PL5 component be using the srcset/picture css directives to pick the correct size for an image? or it does already and I don't know how to use it? Thank you for any advice or enlightenment.
×