Hi, new to this forum and while I have a pretty good grasp on the basics of mysql and databases. The stuff I usually use mysql and the different engines (InnoDB / myISAM) aren’t much hardcore and usually not many transactions occuring at the same time.
However just talked to my boss and since we run some, 2 a year, deadline submissions for the public everyone hits the submit at the very last minute, causing a strain like 2 times a year. Currently we take submissions via email just to avoid this issue, but some colleagues of his have similar issues and they encounter crashes in their system around the deadline for submissions.
Now we have approximatly a 100 submissions at each deadline. So it’s not really a very huge load and I it would really only be inserts in one table with I’m guessing 10-15 fields. No UPDATE’s will be done, nor any SELECT’s (only like one or two after the actual deadlines and those are done by us).
Anyway, am I correct to assume that with InnoDB and rowlocking, no data would be lost and assuming we set the allowed number of connections (transactions ), there won’t be any queues and it will pretty much all be done “at once”?
Now for our own submissions I don’t think we will have any real issues.
However I got me thinking since the colleagues of his have a lot more submissions, and their servers constantly crash each deadline since everyone is waiting for the last minute. Assuming the crash is caused by flawed database construction and not a bottleneck in network / computer load.
Just speculation from my part but I assume they would have a similar table and with 10-15 fields and the crash is caused when like a couple of thousand people try to do their submissions at the same time (each resulting in a INSERT operation). Would it just be enough to configure the number of transactions and use InnoDB and rowlocking and then if the crash continues it’s safe to say that the server just ain’t up for the spike in workload? =)
Now I usually suck at explaining things so ask if there’s something that I missed to point out.
w z l