|
Posted by Jerry Stuckle on 09/16/05 15:06
nospammmer@gmail.com wrote:
> First of all, thanks for your help.
>
>
>>It sounds like you could improve you performance by using query
>>caching and/or better indexing... Read "High Performance MySQL"
>>by Jeremy Zawodny; it should give you some ideas...
>
>
> Even though not an expert, I know quite a bit about database
> optimization, so I believe I can affirm that my database is quite
> optimized.
>
>
>>Yes, it is possible. MySQL supports HEAP tables that are stored in
>>memory. But you still need to figure out a way to save those tables
>>on the hard drive, because HEAP tables disappear when MySQL server
>>stops or reboots.
>
>
> That's right, I have no problems with synchronizing the regular tables
> with HEAP tables. So this is an interesting solution. I was wondering
> however, if I could gain more speed by skipping MySQL altogether and
> using shared memory (Therefore saving communication between php and
> mysql, SQL parsing, etc)?
>
>
>>>Other info:
>>>I have a server which runs both the PHP application and the MySQL
>>>database. It has 1GB of RAM. The database receives 250 queries / sec.
>
>
>>It appears a very manageable load... How many concurrent connections
>>are you handling?
>
>
> We have about 300 concurrent users at peak time and about 150 on
> average. During peak, the number of queries/sec is more than 250
> (perhaps 350?) and the server slows down a little bit but it is still
> acceptable. What we would like to do is optimize in order to be able
> to accept more users at the same time.
>
> Up to now, It still seems like loading the entire database in shared
> memory could be an interesting solutions.
>
> Thank you
>
You really haven't provided enough information to get any meaningful
help. But I'll give it a try.
I see several possibilities:
a) Get faster disks (or a RAID array).
b) Further optimize your database and queries (maybe not possible).
c) Upgrade to Oracle, DB2 or (under Windows) SQ Server.
d) If running Windows, use Unix
e) Put your database on a different machine.
Or a combination of the above. And this is just off the top of my head
- there are a lot of other possibilities.
You could run the database from shared memory, but only if it is 100%
read only - no writes are ever done to it.
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex@attglobal.net
==================
[Back to original message]
|