Best Practices for Hosting Your Drupal Site - Panel Discussion - Moderator Tim Dorr
Best Practices for Hosting Your Drupal Site
Panel Discussion - Moderator Tim Dorr
I offer a review of Drupal hosting and performance improvements, including OpCode cache, such as APC; standard Drupal caching via the Boost module, CDN - Content Distribution Networks, and MySQL optimization via InnoDB rather than MyISAM. Jim Caruso
Full Text of Jim Caruso Speaking at the Drupal Performance Session
Speaker 1: 00:00 I'm Jim Caruso. I have a public relations firm, MediaFirst. For many years we've hosted business websites and bought domain names for people mostly because we came from the content side. In the last year, we picked to go on Drupal because we create content and Drupal's a great content management system and so I was investigating all the different places to run Drupal since my one of my servers running a really ancient version of Red Hat, we wouldn't support anything. So I'm here because I've gone through all those issues recently and I'm bringing my customers over to Drupal.
Speaker 1: 00:41 So I have a whole bunch of issues. I tried a number of, basically, I was trying to economize on my server costs and so I tried a number of different hosting providers and to be nice, I won't say who they were, but I had been a longtime Rackspace customer and I came back and decided to use Rackspace.
Speaker 1: 01:05 And a lot of it was because of the access that Tim said that you had to have to the root server. And then you know, Julie mentioned, Julia mentioned, you know, just there's, this whole hurdle when you first get to Drupal about what do you need to do and how do you need to do it? For example, it turns out that running APC is like something you are just expected to do. And it's almost like people think that you know to do it, but it's something that you have to figure out. Almost all the time you have to go in and you have to reconfigure your PHP.INI file and up the memory limit. And almost anybody who's plugged in a bunch of modules like I have gotten the white screen of death. In fact, I only found that term white screen of death, fairly recently after having done it a whole bunch of times actually. Which means you load up a whole bunch of modules and it takes up too much memory and all of a sudden nothing will display.
Speaker 1: 02:04 So can I, can I run down this list. It turns out that I was in Paris for DrupalCon Paris and, and this guy Bert who actually runs the whole drupal.org infrastructure, walked over to the table and did a brain dump. So I have this brain dump and I can't tell you that I understand everything about it, but there are a couple of different ops opcode caches. That's one of the options. He said that there were a bunch of performance issues with CSS, especially if you're displaying round corners and maybe some CSS person understands what that means. There's obviously this resetting of the PHP.INI. I think I have mine set at 128 meg now. I don't know what ... that's pretty high. I think most people set it at 64 but, you have to, you have to bump it up.
Speaker 1: 02:56 He mentioned several ways to look at your code in your site. So there's a Yahoo site or capability called Why Slow and you can go to Yahoo and you can check out your cycle to tell you what's slow. Also, Safari in the development menu has this capability to look at the low times per page. So it can tell you with what is loading and what's slow. Images are always a big issue, whether they're thumbnails and lots of thumbnails or whether there are other images and they can slow your site down. So having a separate domain or sub domain images is one of the, one of the ways to speed things up. Next, there are a number of providers of content delivery networks (CDN) and I've started getting, up where our sites really aren't big enough to need content delivery networks.
Speaker 1: 03:50 But if you have a big site, I think it's probably a great way to go. So, a CDN or content delivery network, within the community Acquia is actually starting to offer this. I think it's on their roadmap. There are a bunch of things with my SQL. All our old sites are hand coded in Html, WC3 compliant. And they run really fast. And so I'm a guy who loves sub-second response time and of course, you don't get sub-second response time on the web. So I'm always trying to figure out, how to make things perform well. So MySQL configuration, increasing the cache size or even having a separate database server. If you have a big enough installation.
Speaker 1: 04:39 I've already upgraded the ram on my server. The question is depending on your hosting provider, is it cheap, easy and is it even available, especially if you're sharing the host. But so, and then there were, it turns out on the drupal.org, also known as d.o. Memcache is another way to do it. There is a module called Memcache that doesn't actually give you Memcache. It just monitors Memcache so that you can go in and you can look at the cache eviction counter and other things to see if it's really helping you.
Speaker 1: 05:15 If you talk to somebody like a deep programmer, they'll talk about not doing things with modules and just going ahead and coding it. So I don't know how technical you people are, but lots of people just like coding past the modules, kind of. I'm a big believer in plugging it in, hoping that everything is there to plug in and that you don't have to code as much. I think that's me slowing down the pizza. And then the last one is just Search, Drupal search which is very good, can be slow. This guy Bert was suggesting, use solar or Acquia has a search offer and that's it.
Speaker 2: 05:57 I mean, I can break down some of those things in particular.
Speaker 1: 05:59 Yeah.