Quantcast
A Guide to High Product Sites PDF  | Print |  E-mail
FAQ Answers
Written by Garry McGillivary   

The RedMystic Core Component is very capable of producing large product feeds and sitemaps. We've successfully tested and produced product feeds and sitemaps for a virtuemart site with 100,000 products. The component has been tuned to reduce memory consumption which typically results in longer processing time. This trade-off is appropriate due to memory being the limiting factor on most hosting plans. This is especially true on shared hosting environments.  Although the component is tuned for optimal performance there are configuration choices that can significantly increase/decrease performance.

 

  • ZIP_COMPRESSION_METHOD: This configuration setting potentially has the largest impact to performance. If you have very limited memory (< 50MB) or a large number of products (>1000) then this option will be critical.  The configuration option offers two settings - JArchive and zipArchive. JArchive is the Joomla api zip compression routine which will work on most sites but suffers from terrible memory consumption with large files (e.g. A feed file with 25k products). It is very easy exhaust all php allocated memory with larger product sites causing the feed to fail. ZipArchive requires significantly less memory consumption over it's counter part but requires php 5.2. 

The following matrix benchmarks the core component version 1.2.4 on an Ubuntu server with php memory set to 30 MB. In all cases the max php memory did not exceed 9MB. In early tests using JArchive we were unable to compress even moderate size product feed files.

 

 

Run Process Product Count Joomla SEF Memory (Mb) xml1 file (MB) xml2 file (MB) xml3 file (MB) xml total (MB) zip1 file (MB) zip2 file (MB) zip3 file (MB) zip total (MB) Duration (Seconds) Duration (Minutes)
1 Feed Gen 100000 Yes 8 210.89     210.89 3.1     3.10 478.33 7.97
1 Sitemap Gen 100000 Yes 8 20.4 20.4 0.00313 40.81 0.55 0.54 0.0007 1.09 771.35 12.86
2 Feed Gen 50000 Yes 8 105.44     105.44 1.56     1.56 175.89 2.93
2 Sitemap Gen 50000 Yes 8 20.4 0.0027   20.41 0.65 0.63   1.28 213.43 3.56
3 Feed Gen 10000 Yes 8 21.07     21.07 0.32     0.32 27.08 0.45
3 Sitemap Gen 10000 Yes 8 4.08     4.08 0.65     0.65 13.92 0.23
4 Feed Gen 1000 Yes 8 2.11     2.11 0.03     0.03 1.85 0.03
4 Sitemap Gen 1000 Yes 5.25 0.41     0.41 0.65     0.65 0.56 0.01
5 Feed Gen 500 Yes 6 1.05     1.05 0.02     0.02 1.01 0.02
5 Sitemap Gen 500 Yes 4.5 0.21     0.21 0.01     0.01 0.31 0.01

 

Recomendation: If you have greater than a thousand products and/or minimal memory then use the zipArchive configuration option. If you do not have PHP 5.2 then consider limiting your products or moving to a hosting provider that offers php 5.2+ . Find qualified hosting companies

 

 

 

 

 

 

Last Updated on Tuesday, 18 May 2010 22:37