[Deploying Sakai] Hardware Recommendations

Matthew Jones matthew at longsight.com
Fri Sep 7 10:12:54 PDT 2012


I agree, SSD drives for the database (which doesn't get too big anyway if
the storage is on NFS) and even the app servers (if you like fast startups)
is a great deal.

The Mysql verses Oracle question might have used to matter a few years ago
back when Oracle was faster with GUIDs but as of 5.1 it seems to be about
the same. [1] Most of the database traffic as activity picks up is against
the authz tables and you can generally improve that by adjusting your cache
or applying some pre-caching patches that have been contributed from the
community. There are also other ways to improve authz performance if you
needed to scale above 50K? or so concurrent users. I'm really not sure what
the max would be anymore as there are a lot of
performance improvements with 2.9.

At Michigan with 5 Dual Core Xeons (8GB allocated) they were able to do 10K
concurrent max without much adjustment to the cache or authz settings. I
believe after we did change these it gave even more headroom.

Improving the database certainly helps. More memory and local cache on the
app server could help too. Spending more time researching distributed cache
would help if you added more app servers. (To keep them from hitting the
database for the same queries) Extra CPU on the local app servers doesn't
seem to matter except to be able to handle random bugs in the code (mostly
JSF in old versions) as any slow page was generally waiting on DB.

[1] http://krow.livejournal.com/497839.html

On Fri, Sep 7, 2012 at 12:54 PM, Sam Ottenhoff <ottenhoff at longsight.com>wrote:

>
>> App Servers are Two Xeons with 12M RAM
>>
>> DB Servers start with Two Xeons and 24M of RAM
>>
>
> Use enterprise SSD drives or FusionIO (http://www.fusionio.com/) drives
> and you won't have to worry about database performance.
>
>
>>
>> In terms of growth of load, each app server (with 2 CPUs and 12M of RAM)
>> supports 1000 logged in users.
>>
>
>
> Sounds right
>
>
>>
>> For each 1000 logged in users I will add 0.5 CPUs and 4M of RAM to my DB
>> servers.  My initial DB server above will support 2000 logged in users and
>> above 2000 I need to start adding RAM and CPUs.
>>
>> Is this model reasonable as a first approximation or is it crazy?  From
>> my conversations I might be able to use 8GB RAM for the App Servers and
>> maybe I need a touch more CPU per 1000 users on the DB side.
>>
>
> Disk speed (random reads / random writes) seems more important than
> upgrading CPU on the database side.
>
> Approximations sound  about right... maybe 50% more RAM per additional 1k
> students than you have budgeted.
>
>
>>
>> I am still going round-n-round in my mind Oracle versus MySql.  If one
>> requires far more or less hardware per logged in user - it might push me in
>> a particular direction.
>>
>
>
>  Oracle seems to handle some legacy sub-selects better.... a lot more
> attention on MySQL from developers..... I don't think you will notice a big
> difference in performance.
>
> --Sam
>
> _______________________________________________
> production mailing list
> production at collab.sakaiproject.org
> http://collab.sakaiproject.org/mailman/listinfo/production
>
> TO UNSUBSCRIBE: send email to
> production-unsubscribe at collab.sakaiproject.org with a subject of
> "unsubscribe"
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/production/attachments/20120907/aef6f6ed/attachment-0001.html 


More information about the production mailing list