[consulting] Drupal server requirements
Harry Slaughter
harry at slaughters.com
Tue Mar 28 02:59:30 UTC 2006
John Handelaar wrote:
> Harry Slaughter wrote:
>> John Handelaar wrote:
>> ....
>>
>>> And ferchrissakes don't let Drupal's installer use
>>> MyISAM. You'll need InnoDB.
>>
>> Do you have any references to the reasoning that suggests InnoDB over
>> MyISAM? I have been under the impression that MyISAM is preferable in
>> situations where reads are much more prevalent than writes
> > AND where
> > transactional support is not required. I'd be extremely interested in
> > learning if/why this is not actually true.
>
> Out here in the real world, replace that with "MyISAM
> is a total disaster in any high-traffic environment
> where WRITEs occur at all".
>
> While a WRITE is in progress, MyISAM locks the whole
> table. Result:
>
> 1. All WRITEs wait until existing READs finish.
>
> 2. *All* READs stop dead until the WRITEs are done.
>
> 3. All new READs are created as new processes, happily
> queuing up, chewing memory like locusts, and ticking
> off their max-execution-time clocks and doing nothing
> else until 1 and 2 are done.
>
> Repeat until you're fucked.
anecdotal evidence is interesting enough, but hard numbers are what's
relevant?
stuff from books confirms your claim:
"Part of the reason MySQL doesn't suffer as much as expected is because
the majority of applications for which it is used consist primarily of
read queries. In fact, the MyISAM engine (MySQL's default) was built
assuming that 90% of all queries run against it will be reads. As it
turns out, MyISAM tables perform very well as long as the ratio of reads
to writes is very high or very low."
but i'd really like to see numbers!
lots of folks talk about optimization of various kinds. often when you
boil it down to numbers, lots of these optimizations aren't even worth
the effort. mysql_connect -vs- mysql_pconnect, for example. why bother?
i've got a DB that has something like a 50/50 read/write ratio. at less
than a million records, one of the tables is starting to slow the system
down. one of the options is to convert to innodb. but i like to know the
facts as much as possible before trying to implement solutions.
and i wouldn't recommend that anyone blindly convert his drupal DB to
innodb without understanding the diffs between innodb and myisam.
i always assummed innodb was for banks and missile launch software and
myisam was for your average website :) guess it's time to study.
--
Harry Slaughter <-> harry at slaughters.com
Web Developer
http://devbee.com/
http://slaughters.com/
h: 619-303-5952
c: 619-249-8780
More information about the consulting
mailing list