Entwicklung - CMS/Shopsysteme - Magento - Produkt-Attribute schneller speichern

Magento: Produkt-Attribute schneller speichern

eb1

eb1

04.02.2011 11:07

  • 6 Postings, noch 44 bis zum nächsten Level (50)

Postings: 6

Produkt-Attribute schneller speichern

Dienstag, 15. Februar 2011 11:43

  • 0.0/6 Votes: 0
0.0/6 Votes: 0
Das Speichern von Produkten in Magento ist immer eine zeitkritische Herausforderung. Gerade in Importskripten und bei Massenupdates geht hier wertvolle Zeit verloren. Hier findet Ihr einen Ansatz, mit dem man sehr schnell mit den Magento-eigenen Methoden Daten speichern kann.

Erstmal der übliche Weg:
PHP: (Auswählen)$sku = '123';
$storeId = 0;
$id = $product->getIdBySku($sku);
$product->setStoreId($storeId);
$product->load($id);
$product->setStatus(Mage_Catalog_Model_Product_Status::STATUS_DISABLED);
$product->save();


Hierbei wird jedoch durch $product->save() ein großer Overhead mitgeschleppt. Wenn man nur sehr wenige Attribute ändern möchte, geht dies deutlich schneller:
 
PHP: (Auswählen)$sku = '123';
$storeId = 0;
$id = $product->getIdBySku($sku);
$product->load($id);
$product->addAttributeUpdate('status',Mage_Catalog_Model_Product_Status::STATUS_DISABLED,$storeId);


Eigenen Benchmarks auf meiner lokalen Entwicklungsumgebung (Zend Server CE auf Macbook Pro, Cache deaktiviert, 3 Storeviews) haben gezeigt, dass einfache Änderungen in dieser Art ca. 50x schneller gespeichert werden. 100 Änderungen werden jetzt nicht mehr in 200 Sekunden gespeichert, sondern in 3-4 Sekunden.

Quelle: http://www.magelounge.de/2010/10/produkte-schneller-speichern-mit-addattributeupdate/
Zuletzt editiert:Dienstag, 15. Februar 2011 11:47
Bookmark setzen!:Zu Google Bookmark hinzufügen.Zu bloglines hinzufügen.Zu Newsgator hinzufügen.Zu FURL hinzufügen.Zu DIGG hinzufügen.Zu Webnews hinzufügen.Zu Netscape hinzufügen.Zu Yahoo MyWeb hinzufügen.Zu spurl.net hinzufügen.Zu diigo hinzufügen.Zu Newsvine hinzufügen.Zu del.icio.us hinzufügen.Zu SIMPIFY hinzufügen.Zu Mister Wong hinzufügen.Zu Linkarena hinzufügen.Zu isio.de hinzufügen.Zu Oneview hinzufügen.Zu yigg.de hinzufügen.Zu reddit hinzufügen.Zu StumbleUpon hinzufügen.Zu Slashdot hinzufügen.Zu Blinklist hinzufügen.Zu Technorati hinzufügen.Zu Blogmarks hinzufügen.Zu Blinkbits hinzufügen.Zu ma.gnolia hinzufügen.Zu smarking.com hinzufügen.Zu Netvouz hinzufügen.Zu co.mments hinzufügen.Zu Connotea hinzufügen.Zu de.lirio.us hinzufügen.

Specials

Bytefresser Specials: Anno 1404

Umfrage

Welches ist Dein Lieblings-Anno?

(154 Stimmen)

1. Ganz klar: Anno 1800!
2. Anno 2205
3. Anno 2070
4. Anno 1404
5. Anno 1701
6. Anno 1503
7. Anno 1602
8. Anno Online

Benutzer-Counter

Besucher gesamt: 1.278.171
Besucher heute: 64
Besucher gestern: 176
Max. Besucher/Tag: 1.578
Gerade online: 8
Max. online: 167
Seiten gesamt: 29.596.379
Aufrufe diese Seite: 5.268

Tag-Cloud

  cache     produkt-attribute     dienstag     postings     bytefresser     magento-eigenen     hierbei     status_disabled     zuletzt     level     herausforderung     produkten     februar     server     methoden     erstmal     gerade     ansatz     speichern     auswählen     storeviews     daten     sekunden     bookmark     entwicklung     massenupdates     overhead     importskripten     shopsysteme     magento