werd Posted January 31, 2013 Report Posted January 31, 2013 Autoram - iesaku izmantot Magento esošo funkcionalitāti. Magento "kodolā" ir RSS modulis(app/code/core/Mage/Rss/), kas lieti noder par piemēru.Bet konkrētajā gadījumā gaidīt ~25 sekundes(aut.), lai katru reizi izvadītu nepieciešamo XML saturu ir dumji. Lūk piemērs(nedaudz gan atšķirās produkta atribūtu komplekts) - http://pastebin.com/AXamD8tz Iesaku uzlikt CRON procesu, kas šo failu pēc vajadzības(piemēram, reizi diennaktī) atjauno. Quote
aaxc Posted January 31, 2013 Report Posted January 31, 2013 Pieļauju ka maldos ( sen bija tas laiks, kad taisīju ), bet man liekas, ka salidzini.lv prasīja biežak atjaunot datus. Zinu, ka es arī taisīju php scriptu, kas ģenerēja xml uz katru pieprasījumu. Bet tam i-veikalam arī preces mainījās / nāca klāt reizi stundā apmēram. Quote
werd Posted January 31, 2013 Report Posted January 31, 2013 Pieļauju ka maldos ( sen bija tas laiks, kad taisīju ), bet man liekas, ka salidzini.lv prasīja biežak atjaunot datus. Zinu, ka es arī taisīju php scriptu, kas ģenerēja xml uz katru pieprasījumu. Bet tam i-veikalam arī preces mainījās / nāca klāt reizi stundā apmēram. Nav taču akmenī iekalts cik bieži atjaunot - ik stundu, ik minūti vai pēc produkta datu pievienošanas/atjaunošanas. It's up to You! Quote
aaxc Posted January 31, 2013 Report Posted January 31, 2013 Tas vairāk bija raksta autoram domāts. Quote
F3llony Posted January 31, 2013 Report Posted January 31, 2013 Vobshem to, ja jau lieta aiziet līdz tādam līmenim, CRON skripti te nafig nav vajadzīgi. Uzrakstam skriptu, kur sākumā notiek pārbaude, kad modificēts cache file, ja akrāk par (intervāls), tad ģenerējam XML, ievietojam failā, izvadam output. Ja fails modificēts intervāla ietvarā, izvadam faila saturu. Quote
rATRIJS Posted January 31, 2013 Report Posted January 31, 2013 Tik to gjenereeshanu background taskaa savaadaak dazhi pieprasiijumi prasiis taas 25 sekundes... un ja jau ir background taski, tad to var novienkaarshot uz cronjob'iem... Quote
F3llony Posted January 31, 2013 Report Posted January 31, 2013 Vai arī updeitojam XML tikai tad, kad reāli ir veiktas izmaiņas... Quote
werd Posted January 31, 2013 Report Posted January 31, 2013 Vobshem to, ja jau lieta aiziet līdz tādam līmenim, CRON skripti te nafig nav vajadzīgi. Uzrakstam skriptu, kur sākumā notiek pārbaude, kad modificēts cache file, ja akrāk par (intervāls), tad ģenerējam XML, ievietojam failā, izvadam output. Ja fails modificēts intervāla ietvarā, izvadam faila saturu. Šajos gadījumos lietotājam/servisam būs jāgaida tās pašas 25 sekundes, ja notiek ģenerēšana :) Neredzu ieguvumu salīdzinājumā ar crontab. Quote
marrtins Posted January 31, 2013 Report Posted January 31, 2013 Jebkurā gad 25sek uz 500 itemiem - tas ir kaut kas nenormāls. Quote
codez Posted January 31, 2013 Report Posted January 31, 2013 Jebkurā gad 25sek uz 500 itemiem - tas ir kaut kas nenormāls. Viņš tur izmanto kaut kādu ORM, kas drošvien taisa bezmazvai 500 SELECTus vai kas tamlīdzīgs. Tāpēc tik lēni. Quote
daGrevis Posted January 31, 2013 Report Posted January 31, 2013 (edited) Parādi kurš ORM taisa 500 kverijus... :D Edited January 31, 2013 by daGrevis Quote
codez Posted January 31, 2013 Report Posted January 31, 2013 Parādi kurš ORM taisa 500 kverijus... :DNu tak viņš kodu ielika.http://pastebin.com/7KvLDKdP foreach ($product->getCategoryIds() as $category_id) { $category = Mage::getModel('catalog/category')->load($category_id); Quote
F3llony Posted January 31, 2013 Report Posted January 31, 2013 Šajos gadījumos lietotājam/servisam būs jāgaida tās pašas 25 sekundes, ja notiek ģenerēšana :) Neredzu ieguvumu salīdzinājumā ar crontab. Es teicu Izmaiņas... Kāpēc Tu uzreiz padomāji exportu no DB?. Nu tak viņš kodu ielika. http://pastebin.com/7KvLDKdP foreach ($product->getCategoryIds() as $category_id) { $category = Mage::getModel('catalog/category')->load($category_id); Iterators? ... Bet nu var jau būt, ka kāds lāme rakstījis... Quote
rpr Posted January 31, 2013 Report Posted January 31, 2013 tur jau izskatās, ka produkti x5 selecti. katrs load un collection vēl uztaisa katram produktam selektu. katram produktam vēl x kategorijas selekti un citi pribambasi. Quote
codez Posted January 31, 2013 Report Posted January 31, 2013 Iterators? ... Bet nu var jau būt, ka kāds lāme rakstījis... Nu tās 25 sekundes uz tiem 500 ierakstiem ļoti precīzi velk uz to, ka tiek taisīts selects katru reizi. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.