Hi everyone,
I just got BOA 2.0.9 with Nginx, PHP-FPM and Pressflow running on Debian Wheezy in a VPS. I'm thrilled to finally have Drupal running on Nginx, thanks to BOA. Most of the site feels much snappier than the shared LAMP server that I'm migrating from. Views and blocks are really quick to load. However, I'm surprised that many nodes are much slower to load, especially large ones with lots of comments. Basically, it appears that the the old Apache + mod_php server would start to send data to be rendered almost immediately and the page would render bit by bit, whereas Nginx with PHP-FPM seem to compute the whole page and send it to be rendered all at once. This gives the sensation of being slower, and in fact wait times are really quite long. I tried:
fastcgi_keep_conn on;
proxy_buffering off;
gzip off;
...but it still sits there waiting on the server and then all of the sudden renders the page in one shot.
Any suggestions on how to improve this? Thanks a lot!
Comments
I can't answer your question
I can't answer your question directly, but I had to research what the heck BOA was. (For others, it appears to be a way to automate the deployment of Drupal site instances and VMs.)
Sorry for being off-topic, but would you care to share why you decided to use this method? Can't help but wonder if it might be more complex than you need it to be. Did you consider just doing a straight nginx/persuio's config installation?
The Boise Drupal Guy!
It shouldn't work like that.
It shouldn't work like that. A page will render when the html and all css and js files in the head are downloaded. Images and js rendered in the body can render after. nginx shouldn't behave any differently than apache in that regard.
There are tools such as webpagetest.org and dev tools in chrome and firebug that can show you a waterfall view of a page rendering. If you still have the old site up, then you can compare. Or post the page addresses here.
Also you should check page generation times with the devel module. Does BOA install the apc opcode cache?
Hi, and thanks to both of you
Hi, and thanks to both of you for the fast reply.
@Garret: I chose BOA because I wanted something that would assist me in compiling and configuring Nginx and PHP 5.3 on Debian 7, since I'm still on Drupal 6 and Debian 7 doesn't have PHP 5.3. But I'll admit that the entire BOA configuration might be a bit much for my needs. Since your comment, I've been researching more and I found https://github.com/skl/phundamental, which is a nice clean, simple installer for the Nginx, MariaDB and PHP-FPM stack. Maybe I'll give Perusio a try as well.
@Brian: So it looks like MariaDB is performing slower on this server. Thanks for pointing me in the right direction. I'll try to profile my site more later and report back.
Just a quick update: I got
Just a quick update: I got everything running pretty nicely. I ended up using https://github.com/skl/phundamental to install the Nginx / PHP-FPM / MariaDB stack, and I tweaked the MariaDB settings to use the "large" configuration for servers with 512MB of RAM dedicated to MariaDB. Overall reliability and DB performance are pretty impressive now.
Thanks to everyone for contributing to this project, it's really nice to be free from Apache. :)