WordPress.org

Ready to get started?Download WordPress

Forums

WP Super Cache
WP Super Cache not working in Apache 2.4 with load balance (12 posts)

  1. donshapiro
    Member
    Posted 8 months ago #

    We've used WP Super Cache for years without a problem. During the last week we've experienced major issues with 6 different WordPress websites running on 5 different themes all on WP 3.71. At first, we thought it might just be the 3.7 upgrade as some post have stated. There still may be issues with that.

    Last Tuesday, we moved all our websites from a legacy server environment at GoDaddy that used a single port running on Apache 2.2 to a load balanced grid server environment running Apache 2.4. Since then, every one of our websites started experiencing 500 internal server errors whenever we updated the MySQL datebase. Godaddy spent hours yesterday investigating everything possible on its servers and the error logs we've been running. It was exhaustive and they found nothing amiss.

    Not only were we experiencing these server errors working in the backend of WP, when we would visit the sites, we would get a blank screen. Additionally, the WP Super Cache test started showing a time stamp difference on all six installations. When we deactivated WP Super Cache, it went to white screen again and required many refreshes even to accomplish that. Same when we deleted it. Now that we've deleted it on all our websites, they are functioning normally again.

    Obviously, there are a lot of variables that could affect what is going on. Is it the new WordPress? Is it the load balancing server structure or Apache 2.4? Is it some combination of all of these? With the exhausting checking of our server environment and addressing all error log issues for a problem that was occurring on different WP installations with different themes, it appears that the culprit most likely is WP Super Cache.

    We encourage the developer to investigate this and test out the plugin in the server environment we have described to see if there are, in fact, some coding issues that need to be addressed.

    Thanks,

    Don Shapiro

    http://wordpress.org/plugins/wp-super-cache/

  2. Donncha O Caoimh
    Member
    Plugin Author

    Posted 8 months ago #

    The plugin won't work well in a multi server environment as it writes files to the filesystem. That's why each server has a different timestamp as the files are stored on each. You could try writing the cached files to a shared NFS directory. There aren't any locking issues any more but you'll have a single point of failure again.

    I'm not sure why you're getting 500 errors though.

  3. jeremyers1
    Member
    Posted 8 months ago #

    I am using a VPS, and was thinking up upgrading from Apache 2.2.25 to Apache 2.4.6

    Are you saying I should not do this?

  4. Pothi
    Member
    Posted 8 months ago #

    I am using a VPS, and was thinking up upgrading from Apache 2.2.25 to Apache 2.4.6

    Are you saying I should not do this?

    No, I don't think he meant that. He just expected those timestamp related errors for this use-case, because...

    The plugin won't work well in a multi server environment as it writes files to the filesystem. That's why each server has a different timestamp as the files are stored on each.

    I wouldn't recommend WPSC on a load balancing environment, either.

  5. jeremyers1
    Member
    Posted 8 months ago #

    Thanks.

    After chatting with my hosting company, I tried several times today to upgrade my server to 2.4.6, but it kept failing. Not sure why. So then they did it. Now it seems to be working.

  6. donshapiro
    Member
    Posted 8 months ago #

    This is what I expected to learn and it raises a major question.

    Godaddy is the world's largest hosting company. They are now calling their single port server environment legacy. They are migrating everyone over to their new grid load balanced system. Any new customers joining GoDaddy will automatically be put into the load balanced system. If Godaddy is doing this, then this is the direction everyone will be moving to.

    So if single port servers are legacy, that means WP Super Cache is now officially a legacy plugin.

    Are the developers of WP Super Cache going to write the code so their program works in the new normal load balanced environment? Yes, the code can be written to cache with matching time stamps in this environment. Someone just has to be willing to write and test that code. This isn't really new. It's just new to the hosting companies. A company I worked for installed a fully load balanced system in 2004 for its server environment.

    What other caching plugins are currently written to work in a load balanced environment?

    As Bob Dylan sang in 1963, "The times they are a changin."

  7. Pothi
    Member
    Posted 8 months ago #

    What other caching plugins are currently written to work in a load balanced environment?

    Batcache is the most popular. WP FFPC is used in one of the Juju charms for WordPress.

  8. petermolnar
    Member
    Posted 8 months ago #

    Theoretically, if you set up WP-FFPC with memcached backend, all hosts connecting to the same memcached pool, it should work, regardless of the number of servers, but this is theory.

    If you could prove it, it'd be very happy :)

    p.s. I'm the author of WP-FFPC

  9. Donncha O Caoimh
    Member
    Plugin Author

    Posted 8 months ago #

    donshapiro - do you have any documents or press releases giving more details? I find it hard to believe they'd move all their customers to load balanced servers because of the complexity involved. A basic hosting package certainly doesn't need to run on several load balanced servers.

    Even if that were the case there are still many websites not on Godaddy so it's premature to say WP Super Cache is a legacy plugin.

  10. donshapiro
    Member
    Posted 8 months ago #

    Donncha,

    You've asked a very good question. There is a critical reason all websites should be in a load balanced environment...port access to their website. Under a legacy system, all traffic to a website must go through one port. If that port gets busy either because the website (hopefully) is growing or because the website is on a shared server, then higher traffic levels will cause the sites to slow down. Sometimes, those slowdowns can be dramatic.

    Even those who have paid more for a dedicated IP and hosting package are housed in a server with hundreds and maybe thousands of other websites. Even if someone has the money to run on their own server which very few WordPress websites do, they are still subject to speed issues through a single port.

    Load balancing of packets and traffic is the best way to insure that a website of any size and volume doesn't experience slow downs due to port traffic.

    Why is this so super important? Because site speed is one of the key factors Google uses in page rank. They want to rank pages higher that are a better experience to the user. You know this which is why you created WP Super Cache. But caching can't help speed of delivering websites if the port is clogged up.

    When I called Godaddy and told them we were experiencing speed issues, they immediately asked us to migrate to the new servers. There was no cost. They are additionally encouraging us to consider migrating to CP Panel which they just started offering instead of their own hosted control center. They said that would increase our speed too.

    Back in 2004 when I worked with a super server techie (who had designed American Express's server center amongst other things), he said load balancing is the wave of the future. It has now arrived in the hosting environment and will become more popular both because the hosting companies want to move people to these grid environments and because website owners want to keep their speed high and avoid bottle necks.

    I would be surprised if there are any non load balanced server environments for the medium and large hosting companies within 10 years, most likely sooner. No one is going to build a new server environment today that is not load balanced. It is only the old systems that are that way. As those are replaced like Godaddy is doing, they are being replaced with grid servers. As the majors move, so the minors will follow.

    For the hosting company, this also gives them advantages in how they administer their network and the level of availability they can consistently deliver. One huge advantage for a hosting company is that a server can go down without it affecting website availability. That keeps their customers happy and attracts more business. In a legacy environment, if the server has a problem, those sites go down until its repaired. They have to use mirror systems for availability to reduce the down time but that is more expensive to operate than a load balanced environment.

    Hope this helps,

    Don

  11. Donncha O Caoimh
    Member
    Plugin Author

    Posted 8 months ago #

    Ah, that's clearer. Not every site needs to move to load balanced hosting. It adds a ton of complexity. I wouldn't go calling websites hosted on a single server "legacy hosting". Sure, there's a single point of failure but it's not what the customers of that hosting company paid for.

    I thought you were quoting from some official document but this is just speculation. Sure, in ten years time things will likely be more virtual than they are now but I'm quite sure there'll still be basic hosting with one server serving multiple websites.

  12. petermolnar
    Member
    Posted 8 months ago #

    Donncha O Caoimh you're mistaken, shared environments will be legacy within a year.
    Fortunately, chroot-on-steroids environments, like lxc containers ( see heroku ) are rising and just like disposable aws containers, they will take over soon.

    The complexity is not bad if it's automatized ( eg. staging box -> auto distribution ) and loadbalancing could solve a lot of issues with the boxes, including maintenance time, single point of failure, and so on. They could easily provide a lot more 9 uptime this way, and it's be foolish not to do so. Shared hosting environments are about to be legacy in a very short time.

Reply

You must log in to post.

About this Plugin

About this Topic