We are actually facing both capacity and availability issues at the same time.
Our current primary server is a Dell T410 (single processor, 32 GB memory) with
a Dell T310 (single processor, 16GB memory) as backup. Normally, the backup
server is running as a slave to the primary server and we manually switch it
over when the primary server fails (which it did last Saturday morning at
2:00AM.) The switch over process takes 10-15 minutes although I am reducing
that to about five minutes with some scripting (the changeover is a little more
complex than you might think because we have a middle piece, also MySQL, that
we use to determine where the real data is.) Until six months ago, the time
delay was not a problem because the customer processes could tolerate such a
delay. However, we now have a couple of water parks using our system at their
gate, in their gift shops and in their concessions so we need to now move the
changeover time to a short enough period that they really don't notice. Hence,
the need I have described as 'high availability'.
The T410 is normally reasonably capable of processing our transactions, i.e.,
the customers are comfortable with the latency. However, we have been on the
T310 since last Saturday and it is awful, basically barely able to keep up and
producing unacceptable latency. Further, our load will double in the next six
months and double again the the following six months.
So, my thought was that since we have to deal with the issue change over time
which will cause us to restructure the servers, that we should also deal with
the capacity issue. I think a couple of Dell T620's will provide the capacity
we need (the servers we have spec'ed should be around 8X faster than the T410)
but I have no experience evaluating or setting up HA systems (I have worked
with MySQL for 12 years and am reasonably comfortable with it and I have read
everything I can find about HA options and their implementations.) Hence, my
post asking for help (which we are willing to pay for.)
The web app is primarily JSP's for the administration side and Flash for the
operators and other people doing transactions. The server side code is about
1.25 million lines of code and there are about 750 JSP's. The data is 950
tables with heavy use of foreign key constraints. The container is Tomcat
which runs on separate servers (the data servers only run MySQL.)
Any ideas or help in any way are always welcome.
Thanks,
Carl
On Jul 18, 2012, at 9:42 AM, Shawn Green wrote:
On 7/17/2012 8:22 PM, Carl Kabbe wrote:
On Monday, I asked if there were consultants out there who could help set up
an NDB high availability system. As I compared our needs to NDB, it became
obvious that NDB was not the answer and more obvious that simply adding high
availability processes to our existing Innodb system was.
So, I am back asking if there are consultants lurking on this list that
could help with this project.
As has been discussed on this list many times before, there are many ways to
measure 'high availability'. Most of them deal with what kind of disaster you
want to survive or return to service from. If all you are looking for is
additional production capacity then the terms you may want to investigate are
'scale out', 'partitioning', and 'replication'. All high-availability
solutions require at least some level of hardware redundancy. Sometimes they
require multiple layers in multiple locations.
Several of those features of MySQL also help with meeting some
high-availability goals.
Are you willing to discuss your specific desired availability thresholds in
public?
--
Shawn Green
MySQL Principal Technical Support Engineer
Oracle USA, Inc. - Hardware and Software, Engineered to Work Together.
Office: Blountville, TN
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/mysql
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/mysql