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?

(151 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.265.931
Besucher heute: 519
Besucher gestern: 286
Max. Besucher/Tag: 1.578
Gerade online: 24
Max. online: 167
Seiten gesamt: 28.901.081
Aufrufe diese Seite: 129

Tag-Cloud

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