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?

(157 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.300.256
Besucher heute: 112
Besucher gestern: 207
Max. Besucher/Tag: 1.578
Gerade online: 3
Max. online: 167
Seiten gesamt: 30.969.093
Aufrufe diese Seite: 5.339

Tag-Cloud

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