fabienne:
I was talking to a friend (who is very wise in the ways of e-commerce) about this and he suggested that maybe my problem was interference from my webhost's server.
Although 'interference' is quite unusual terminology to describe a server related problem I have to admit that I've actually been thinking along these lines myself - In fact it was this possibility that prompted to ask/query about whether it was somehow related to products with attributes.
Products with attributes are a lot more demanding on a server than products without attributes - And I have seen server/sites with a similar problem to yours whereby occasionally an attributed product couldn't be added to a cart because it was apparently out of stock - but only intermittently. In each of these somewhat rare occasions they have been accompanied by MySQL server errors that had been logged.
I realise that hindsight is 20/20, but your recent log entry with the SQL server running out of memory has pretty much confirmed my suspicions that this is almost certainly the reason for your problem(s).
fabienne:
He suggested that my getting a dedicated server might stop that problem. What do you think?
I'm always somewhat dubious about this common suggestion, because it doesn't really address the issue. A lot of people simply take the advice and get the cheapest dedicated server they can find, which generally speaking will have less CPU power and a lot less memory than the shared server that they are currently using - In other words many find themselves with either the same issues, and in many cases even bigger issues, and to resolve them they are 'sold' a bigger and bigger priced hosting plan until eventually the problems do go away.
In other words a 'dedicated server' is, in itself, not a solution to the problems.
HOWEVER, having said that, if the current shared server is grossly overloaded (as many are), then even a low budget 'dedicated server' may invoke a solution to the problem - But so will another shared server that isn't as overloaded.
fabienne:
I am using 1&1 right now and they have been very good indeed. But my business is growing and I wonder if I am getting more traffic than my set up can handle.
It isn't generally isn't the traffic that is the issue - You could have very little traffic, but if another site on the same shared server is hogging all the resources available then you'll still get this kind of problem.
fabienne:
I have a big sale right now with its increased traffic. Do you think a dedicated server would solve my problems or do you think that is just trying to use a quick jazzy fix which won't really fix anything? I am just as prone to the latter as to the former when frustrated, that is why I am asking your opinion.
A high power dedicated server with lots of RAM can 'hide' (aka 'fix') all manner of problems and issues, so I can only say Yes, this will be one way to solve the problem - And if you have a really busy site it may even be the only solution.
However, there are a wide range of other options that will also invoke a cure/fix rather than jumping from one extreme (overloaded shared server) to the other extreme (high powered dedicated server).
Of the 60 or so eCommerce stores that we host or maintain, we only have one that we've had to give a dedicated server to, and this store is averaging between 50,000-60,000 sessions per day (100,000-150,000 page requests) - According to ZenCart's counters.
The other sites rarely reach 3000 sessions ( <10000 page requests) per day and hosting on a 'good' shared server isn't a problem.
How does your counters compare to these?
Anyway, as I was saying, I'm pretty confident that your problems are server related (not code related), so the solution does mean a change of servers (unfortunately).
What I would suggest though is probably going to be a little different than most, and that is to request your host move your site to a different server under the same hosting plan. Although the 'new' server will almost certainly have the same specs and resources as your current one, it will be hosting different customers and different sites and these customer/sites could easily be making less of demand on the hardware. which will in turn leave more resources available for your site.
If that doesn't solve the problem (or your host isn't willing to migrate your site) you'll need to look into other hosts, or a 'better' plan with your current host.
You should also keep in mind that shared servers aren't 'static'. The fact that they ARE shared means that they'll often start out 'good', but as the host adds more and more customers they get slow and slower until they eventually get overloaded (as yours seems to be) and bigger issues arise. Also, because they are shared, it only takes one customer running 'faulty' software to cause problems for all customers on the server - Generally speaking, the host will quickly identify these customers and have them removed.
Upgrading to a 'dedicated server' is only a viable solution if the server itself has enough resources to handle the demands of your site. As a general rule It is better to be on a shared server with 8-16gig of RAM (or more) than a 'dedicated server' with less than 1Gig.
A dedicated server is, in my view, a last resort to fixing server overload/out of memory issues rather than the 1st resort.
On rare occasions - IOW, a REALLY BUSY site, a high power dedicated server is going to be the only solution. Unless you are pulling in over $200k in annual sales you probably don't need something like this. A non-overloaded shared server is almost always the better option.
Cheers
RodG
NOTE: We are sorry that Rod is no longer with us.
We are grateful for all his contributions to the Zen Cart community.
Ozpost - The Ultimate Shipping module for Australian Merchants. Click these links for its Homepage, or Download from Zen-Cart.com.