If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
I'd like to be able to leave baskets live for like a week, but don't because of all of the empty baskets. Could you create a way to automatically delete empty baskets separately?
We have our basket timeout set to 5 days for this very reason (7200 minutes). Our customers would lynch us if we shortened it to 12 hours. They use it as a sort of shopping list through the week.
And we have the delete expired baskets and pack data files set up to run automatically every morning about 3am in the scheduled tasks tab, which means we don't have to remember to do it. One of the nice new features that Miva added.
How large the baskets count should be allowed to get will be heavily dependent on functionality in the store and overall traffic, so unfortunately there's no hard rule John. For example, there are third party modules that perform actions on the baskets table with each request, so in stores like that, if the table gets large (i.e. 100,000+ expired) it can create an issue. On the other hand, I've seen stores who had millions of expired baskets with no issue.
You could probably try incrementing the expiry time up and use Firebug, Chrome Developer Tools, etc. in your browser to benchmark a few pages on your site. As the baskets grow, you can determine if the pages that you have been recording the times for are starting to slow down, and then decide when deletion is warranted. Then, like Chris suggested, you can set the scheduled task to keep up with it from that point forward so you don't have to.
We have worked with Scot Shepard at Interactive Design Solutions on this exact solution. Its currently called AutoBasket (and though not officially released, he could hook it up for you). Primarily AutoBasket lets you set your basket timeout to whatever you want (in high traffic, low inventory settings like the initial client situation) you can set the timeout to 5 minutes.What AutoBasket does at this point is to automatically recreate the basket (even though the original may have time out) after checking that the basket items still have inventory. Theoretically, the basket remains forever if you want it to. It can also be configured to send the basket contents to an email address. (In the initial case, that's to allow customers to browse say at work, and then order from home).
Bruce, is that module looking at the baskets table with every request and performing this analysis and potential basket deletion/recreation? That type of process sounds like something that could very seriously impact the performance of a higher traffic store if the store has a reasonable basket timeout.
I believe its only checking if the miva basket has already timed out. its not comparing baskets, just basket id's. The initial case is an Extreme setting due to the limited availability of items and the site traffic, while consistent, is not very high.
How large the baskets count should be allowed to get will be heavily dependent on functionality in the store and overall traffic, so unfortunately there's no hard rule John. For example, there are third party modules that perform actions on the baskets table with each request, so in stores like that, if the table gets large (i.e. 100,000+ expired) it can create an issue. On the other hand, I've seen stores who had millions of expired baskets with no issue.
You could probably try incrementing the expiry time up and use Firebug, Chrome Developer Tools, etc. in your browser to benchmark a few pages on your site. As the baskets grow, you can determine if the pages that you have been recording the times for are starting to slow down, and then decide when deletion is warranted. Then, like Chris suggested, you can set the scheduled task to keep up with it from that point forward so you don't have to.
How do I find out if I have modules that are impacting this? I am totally flying blind with this request. Yesterday, I decided to give the 5 day expiration a try and see if I have any issues. Maybe that will be OK. I could never do it before because the baskets had control of my inventory. Maybe I am worried about nothing.
Bruce: I already have the basket email save functionality.
Comment