Best way to generate and serve static pages on www?

What is the best way to generate and serve static pages on wordpress?

I have been using wordpress + w3tc cache. The site used to be on apache2. Now serving it on nginx.

Now, occasionally I still get hick ups with php and w3tc on the error.log. On heavy traffic, where everyone shows up at the same time, w3tc just disconnects and dies. It can't handle the load. When it works, it is still not fast enough. Actually, I want it really fast, where it feels like a real static site.

I was thinking of generating the whole site as static, and loading to the server.

What is the best way of doing it? Has anyone tried this on linode with wordpress?

I saw this link…

https://www.linode.com/wiki/index.php/S … _My_Linode">https://www.linode.com/wiki/index.php/SlashdotMyLinode

has anyone here used any of these cache utilities such as…

http://webgen.rubyforge.org/

http://webby.rubyforge.org/

https://github.com/mojombo/jekyll

http://www.visolve.com/squid/squid24s1/ … erator.php">http://www.visolve.com/squid/squid24s1/httpd_accelerator.php

http://www.squid-cache.org/

If you used any of those above, what do you think of these? What is good about it? Pros and cons? Do you suggest any other that is not on the list?

I have tried it serving the site manually before… instead of relying on w3tc. I went to top twenty popular pages and grabbed the html and served it as static. It flied. W3tc, and supercache looked lame next to it on speed. Apache without any optimization flew these files fast and steady. Downside, w3tc complained, and got confused.

If someone posted a comment, the server showed 'not found page' for a split second, and redirected to the front page. However, the comment went through. Of course, if I deleted the static page, the dynamic page pushed the updated comments. And search function on the site didn't work. So, on the user interface level, it didn't score too high if you wanted to engage through writing comments, or using the search box.

any ideas… what is the best way to approach this… where the whole site is fetched and served all the pages as static. It would be awesome if it is automated or at least semi automated. If I can get it to that level, next step would be to make sure not serve 'not found page', 'redirect' on posted comment, and of course need to make 'search function' work.

7 Replies

There is fairly detailed description on how to configure an nginx php-fpm setup in the WordPress codex

http://codex.wordpress.org/Nginx

yeah. I saw that a week ago. I am not hopeful on it. However, I am going to give it a shot and benchmark it.

If anyone else has any other idea, please let us all know.

and then there is this for performance……. never used it.

http://www.wikivs.com/wiki/G-WANvsNginx

http://gwan.ch/

I don't know, they make a rather lot of suspicious claims about massive performance gains… At some point, with other servers pulling content from RAM, I don't see why their server would be massively faster.

What I suspect is going on is that their benchmarks are comparing natively compiled scripts to PHP and then claiming the performance benefits, when in practice it's unlikely that anybody is going to rewrite all their code in a proprietary scripting framework that seems to have near-zero adoption.

The wikivs article you link to is clearly a biased advertisement written by the company selling the software. It's almost funny, really.

yeah, wikivs article feels bias and reads like a self promotion. However, I figured maybe this underdog really shines. I have never used it myself. I just barely moved on to nginx.

I am really looking for a way to optimize at every chance I get.

And, when it comes to wordpress, whatever they say is just lame. This includes their performance on load. Instead of agreeing that they build a resource hungry app that can't handle load. They blame everything else under the sun.

Back to squeezing performance at every level….

You can saturate a 50 Mbps link with a badly written visual basic script, so I don't think in these VPS environments there is any significant meaning in raw serving power.

Or to put some numbers on the table, say you had 100k of pure static content per page. That translates to 50-60 concurrent connections to your server @ 50 Mbps sustained. Cakewalk for any of the modern webservers.

Once you put a db connection into the equation, you can have a webserver written in ASM as far as it matters, it will still spend 99.99% of its event loop waiting on IO.

> Once you put a db connection into the equation, you can have a webserver written in ASM as far as it matters, it will still spend 99.99% of its event loop waiting on IO.

exactly my point. :twisted:

have you tired any of these

http://webgen.rubyforge.org/

http://webby.rubyforge.org/

https://github.com/mojombo/jekyll

http://www.visolve.com/squid/squid24s1/ … erator.php">http://www.visolve.com/squid/squid24s1/httpd_accelerator.php

http://www.squid-cache.org/

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct