As promised here is a sum up of what’s going on with the webstore. As most of you know, the store seems to crash everytime there is a sale. This last time was no exception and it wasn’t even a full blown sale. However I did speak with the owner of the compnay who built and hosts my website and we discussed the issues at hand, so here is what he had to say about the whole thing.
First, even though some of you haven’t got to experience it yet, the cart system is in “real time” and once a product is loaded, no one can take it from your cart, so you technically don’t have to rush to check out. I know this is a new concept for people and most everyone tries to get in and get out as fast as possible for fear of losing what’s in their cart. The only time you lose your cart contents is when the site crashes as some of you found out.
This is the only cart system out there that has this feature. Magento is the “sweetest” cart system out there and in theory when everything goes as planned, it’s a wonderful system. However here is where the problem comes in and no one knew that this would happen until it did. The cart system I use is in real time, it does not use “static pages” for the webstore. A static page is what you see on other cart systems and websites. I have static page in use on my site such as the home page, FAQ, Gallery, etc. These pages can not be altered, nothing about them is interactive. My webstore is in real time and the pages are not static. One of the ways you can tell this is by going to the store and ordering the test product. You are able to see the amount of product available in the store but when you add a product to your cart, the number changes immediately which indicates everything is happening in “real time.”
If I were using zencart for instance, what you as the customer see is a static page and maybe the number of products available. Every time you add a product to your cart and go to check out, that product amount shown doesn’t change until you actually check out of paypal at which time maybe 25 other people have checked out also. So the amount of product shown is never accurate because it’s not in “real time”, meaning the moment you add it to your cart it’s not deducted from the inventory. It’s deducted the second you pay for it on paypal. What you’re seeing in other cart systems are static pages, just a shell of what’s out there, it’s the cart system that’s interactive behind the scenes and has no interaction with the actual product page.
So this is how my cart system is different from everything out there and why it was so important to have. People got tired of seeing an available number on a vendors site only to learn they didn’t check out in time even though they could load a product into the cart. That cause oversells behind the scenes and it’s a huge mess (trust me). When we decided to go with Magento this solved that problem, no oversell, deducts from the inventory immediately, the product number shown is what is atually available, no one can take from your cart and you don’t have to check out at lightning speed.
I hope all of this makes sense so far or gives you a brief understanding how cart systems work. So moving on… now here is the problem for my store specifically; having a store in real time and having hundreds of customers logged on and hitting the refresh button is overloading the SQL database. There are hundreds of connections trying to refresh a real time store all at the same time and this is causing the site to crash or overload the database. I’m on the fanciest server all by myself. If my store was not in real time it would work just fine and the site would not crash.
So what does all this mean, what are the options, what am I going to do? Well I was given 3 options. One was to basically get a new cart system which would put us back to overselling and having to check out at lightening speed, whoever checks out first gets the coins and if you had one in your cart but weren’t fast enough, well tough luck situation. I don’t like that system, never have and never will. Option #2 have my website hosted on several servers much like Google, Microsoft, and the big boys do in order to spread the load of users out over several servers. While that isn’t a bad idea, it’s very expensive. I already pay enough money just to be hosted and having this site custom built for me. Being that this is only a hobby and I don’t sell stuff all the time, it’s not realistic to do this. Hey, if I had a money tree, I’d say go for it
The last option and something that is not guaranteed to work or may not even be available is to load a static page for products but keep the cart real time. I don’t know how this all works and it’s something that the owner himself is looking into. He said he didn’t know if it could even be done but if it can, we’d try it. I should know something in the next couple of weeks about this scenario. If we can accomplish this it would be wonderful! The good thing about all of this is knowing what is wrong and now working on a solution.
My thoughts on this whole thing; I want to keep Magento, I really like the features and I liek that it’s real time and no one has to worry about having to check out super fast. Once the product is loaded in your cart, it’s yours! Once the site overloads and crashes then you do lose your products unfortunately. I’m hoping we can find a way to make this work. In the event that a solution for Magento can not be worked out than I have to decide how I want to go about my sales. Do I switch carts and risk alot of angry people during crazy sales when they don’t get their coins? I always get emails from people after sales when this has happened in the past and I hate that it happens. I know I’mnot the only vendor who has this issue during a popular coin sale. I am strongly considering moving to a different technique in sales which would be not announcing a day/time. I’d list the product on the store and then send out newsletters announcing that they were for sale, then move onto the GC forums and announce sales there. This would alleviate a frenzied sale and different people would be able to buy coins. I know this idea wouldn’t be popular either with some people. The way I see it now is that there really isn’t any one perfect solution.
For now, I’m just going to wait and see what the owner can find out and what my next step is, then decisions can be made based on what I know. As always, you are more than welcome to comment about your thoughts/ideas on the situation. I know it’s easy to make suggestions but before you do, please keep in mind that you should have a good understandiong of how those cart systems and websites work. From the outside looking in, it’s never as simple as it seems to be finding solutions. if it were, the perfect system would be used by everyone.
In the meantime thanks for being patient and let’s keep our fingers crossed.
tsun