The document summarizes new features and optimizations made to a high performance photo gallery over multiple versions. Key points include:
1) New features like mobile support, shopping CMS integration, speed improvements from bug fixes, and official Nginx support.
2) Performance optimizations including caching, memcached usage, SQL query optimizations, and switching to Sphinx for faster full-text search.
3) Traffic and usage statistics showing the system can handle over 180,000 pageviews daily on a single server with Nginx, Sphinx, MySQL and memcached.
48. Full multilanguage support including translatable module URL!!! none of my known gallery/cms has this featyre. E.x gallery/search (engish) or gallerie/recherche (french)
66. CREATE TABLE IF NOT EXISTS `lh_gallery_pallete_images_stats` ( `pid` int(11) NOT NULL, `colors` varchar(100) NOT NULL, PRIMARY KEY (`pid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
67.
68. /** * This part was changed based on formula * * It fits here better than just log * * http://en.wikipedia.org/wiki/Tag_cloud * */ $max = 15400/2; // A little better distribution of color $min = 25; $rmax = 50; $rmin = 1; $colorIndex = array(); foreach ($colorsMaximumImage as $color) { $colorIndexString = trim(str_repeat(' pld'.$color['pallete_id'],round((($rmin*($color['count']-25))/($max-$min))*100))); if ($colorIndexString != '') $colorIndex[] = $colorIndexString; }
78. No framework used (well, perhaps this is not a problem, but most of the time they just duplicate frameworks functionality, reinventing the wheel...)
88. Memcached – free & open source, high-performance, distributed memory object caching system (http://memcached.org/)
89. eZ Components – an enterprise-ready, general-purpose PHP library of components used independently or together for PHP application development. (http://ez.no/ezcomponents)
90. JQuery – is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. (http://jquery.com/)