# Rest Api langsam

**URL:** https://forum.shopware.com/t/rest-api-langsam/34988
**Category:** Programmierung
**Created:** [3. März 2016 um 09:58 UTC](https://forum.shopware.com/t/rest-api-langsam/34988 "2016-03-03T09:58:49Z")
**Posts on this page:** 11
**Page:** 1

<div class="post-metadata">

### Author: ![RomanW](https://avatars.discourse-cdn.com/v4/letter/r/57b2e6/32.png) [@RomanW](https://forum.shopware.com/u/RomanW)
#### Post date: [3. März 2016 um 09:58 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/1 "2016-03-03T09:58:49Z")

</div>

Hallo,

ich muss Daten per REST API (/articles) in ein Shopware System einspielen. Das funktioniert auf soweit gut, nur dass ein Datensatz rund 12 Sekunden(!) braucht, bis die Daten eingefügt wurden und ich eine Response erhalte.

(Ich kann auch die Daten nicht mit mehreren Threads senden, da das Shopware System sonst in Timeouts / Locks kommt und mir Datenbank Fehler zurückgibt)

Da ich aktuell auf einem Testsystem arbeite wollte ich fragen ob die REST API bei POST articles generell so langsam ist, oder ob es an unserem System liegt.

Wie kann ich Produkte (auch mit Varianten)&nbsp;per REST API schneller einfügen?

Danke für die Hilfe,

Roman

---

<div class="post-metadata">

### Author: ![DanielNogel](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@DanielNogel](https://forum.shopware.com/u/DanielNogel)
#### Post date: [3. März 2016 um 10:19 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/2 "2016-03-03T10:19:20Z")

</div>

Hi,&nbsp;

schau dir mal die batch-Geschichten an, die hohlen nochmal etwas Geschwindigkeit raus. 12 Sekunden erscheint mir schon sehr langsam, hängt aber natürlich auch von der Anzahl der Varianten ab.&nbsp;

Daniel&nbsp;

---

<div class="post-metadata">

### Author: ![RomanW](https://avatars.discourse-cdn.com/v4/letter/r/57b2e6/32.png) [@RomanW](https://forum.shopware.com/u/RomanW)
#### Post date: [3. März 2016 um 10:24 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/3 "2016-03-03T10:24:59Z")

</div>

Hallo Daniel,

mit der API kann man anscheinend bei POST nur je einen Datensatz senden, oder liege ich falsch?

Danke

&nbsp;

---

<div class="post-metadata">

### Author: ![DanielNogel](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@DanielNogel](https://forum.shopware.com/u/DanielNogel)
#### Post date: [3. März 2016 um 12:23 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/4 "2016-03-03T12:23:21Z")

</div>

Hi,&nbsp;

bei den Artikeln gehen auch mehrere, &nbsp;[REST API - Article Resource](https://developers.shopware.com/developers-guide/rest-api/api-resource-article/#put-stack)

Finde gerade das andere Beispiel nicht, aber PUT auf api/articles/ unterstützt halt auch mehrere Artikel, egal ob Update oder Create&nbsp;

---

<div class="post-metadata">

### Author: ![RomanW](https://avatars.discourse-cdn.com/v4/letter/r/57b2e6/32.png) [@RomanW](https://forum.shopware.com/u/RomanW)
#### Post date: [3. März 2016 um 12:49 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/5 "2016-03-03T12:49:12Z")

</div>

Super, danke!

Leider bekomme ich da aber nach ein paar Sekunden&nbsp; folgende Meldung:

{ Accept: application/json  
&nbsp; Content-Type: application/json; charset=utf-8  
&nbsp; Content-Length: 4954  
}, Content: ‚503 Service Unavailable‘

&nbsp;

&nbsp;

---

<div class="post-metadata">

### Author: ![DanielNogel](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@DanielNogel](https://forum.shopware.com/u/DanielNogel)
#### Post date: [3. März 2016 um 19:02 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/6 "2016-03-03T19:02:02Z")

</div>

Hi,

hast du das [wie hier beschrieben](http://community.shopware.com/Shopware-4.2-Upgrade-Guide-for-Developers_detail_1436.html#Batch_Mode) gemacht?

```
$restClient->put(
    'articles/', 
    array(
        array('id' => 1, 'name' => '...'),
        array('id' => 1, 'name' => '...'),
        array('name' => '...'),
        array('name' => '...')
    )
);

```

Das sollte eigentlich funktionieren. Ansonsten: Gibt es eine Fehlermeldung im error\_log?&nbsp;

---

<div class="post-metadata">

### Author: ![Mogly](https://avatars.discourse-cdn.com/v4/letter/m/b3f665/32.png) [@Mogly](https://forum.shopware.com/u/Mogly)
#### Post date: [3. März 2016 um 23:26 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/7 "2016-03-03T23:26:37Z")

</div>

also je nachdem wieviele und wie große bilder du hast, dauert das wirklich so lange. eine rolle spielt da auch die serverumgebung. ich habe ständig das selbe problem gehabt. je nach “wetter” ist so ein import mal bei 500 artikeln, mal bei 1700 artikeln abgebrochen, 503 error. nachdem ich den import nochmal gestartet habe, fing er wieder an also war mit den übergebenen daten alles i.o.

ich behaupte einfach mal das ist so 🙂

---

<div class="post-metadata">

### Author: ![RomanW](https://avatars.discourse-cdn.com/v4/letter/r/57b2e6/32.png) [@RomanW](https://forum.shopware.com/u/RomanW)
#### Post date: [4. März 2016 um 06:19 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/8 "2016-03-04T06:19:59Z")

</div>

> [@Mogly schrieb:](https://forum.shopware.com/profile/22694/Mogly "Mogly")
> 
> also je nachdem wieviele und wie große bilder du hast, dauert das wirklich so lange. eine rolle spielt da auch die serverumgebung. ich habe ständig das selbe problem gehabt. je nach „wetter“ ist so ein import mal bei 500 artikeln, mal bei 1700 artikeln abgebrochen, 503 error. nachdem ich den import nochmal gestartet habe, fing er wieder an also war mit den übergebenen daten alles i.o.
> 
> ich behaupte einfach mal das ist so ![:)](https://dub1.discourse-cdn.com/flex013/resources/emoji/smile.png ":)")

Hallo Mogly,

danke für die Info, ohne Bilder&nbsp;schaut das dann schon wieder anders aus… &nbsp;da konnte ich 200 Artikel in ~4 Minuten anlegen :-). Aber wie bekomme ich jetzt die Bilder in die Artikel…

sg & danke Roman

---

<div class="post-metadata">

### Author: ![RomanW](https://avatars.discourse-cdn.com/v4/letter/r/57b2e6/32.png) [@RomanW](https://forum.shopware.com/u/RomanW)
#### Post date: [4. März 2016 um 06:41 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/9 "2016-03-04T06:41:50Z")

</div>

> [@Daniel Nögel schrieb:](https://forum.shopware.com/profile/4010/Daniel%20N%C3%B6gel "Daniel%20N%C3%B6gel")
> 
> Hi,
> 
> hast du das [wie hier beschrieben](http://community.shopware.com/Shopware-4.2-Upgrade-Guide-for-Developers_detail_1436.html#Batch_Mode) gemacht?
> 
> $restClient-\>put(  
> ‚articles/‘,  
> array(  
> array(‚id‘ =\> 1, ‚name‘ =\> ‚…‘),  
> array(‚id‘ =\> 1, ‚name‘ =\> ‚…‘),  
> array(‚name‘ =\> ‚…‘),  
> array(‚name‘ =\> ‚…‘)  
> )  
> );
> 
> Das sollte eigentlich funktionieren. Ansonsten: Gibt es eine Fehlermeldung im error\_log?&nbsp;

Hallo Daniel,&nbsp;

ja ich mache es genau so, nur mit dem Unterschied, dass ich auch Bilder dabei habe.&nbsp;Bei den Bildern&nbsp;scheint auch das&nbsp;Problem zu liegenm ohne hat alles jetzt perfekt&nbsp;funktioniert.&nbsp;Sobald ich die Bilder einhänge bekomme ich wieder die Meldung&nbsp;‚503 Service Unavailable‘. Im Log unter /www/var/log/&nbsp; habe ich keine Einträge bekommen.

Hier mein JSON:

```
[
  {
    "retries": 0,
    "name": "g2 air black ",
    "description": "g2 air black ",
    "descriptionLong": "g2 air black ",
    "active": true,
    "mainDetail": {
      "number": "12120120",
      "active": true,
      "inStock": 100,
      "weight": "0.00",
      "width": "0.00",
      "height": "0.00",
      "prices": [
        {
          "price": 123.12
        }
      ],
      "isMain": true
    },
    "tax": {
      "tax": "20"
    },
    "supplier": "gloryfy",
    "images": [
      {
        "main": 1,
        "link": "[bildurl]"
      },
      {
        "main": 0,
        "link": "[bildurl]"
      }
    ],
    "categories": [
      {
        "id": 12080,
        "active": false,
        "blog": false,
        "showFilterGroups": false,
        "hideFilter": false,
        "hideTop": false
      }
    ]
  },
  {
    "retries": 0,
    "name": "g2 pure woods ",
    "description": "g2 pure woods ",
    "descriptionLong": "g2 pure woods",
    "active": true,
    "mainDetail": {
      "number": "12120400",
      "active": true,
      "inStock": 100,
      "weight": "0.00",
      "width": "0.00",
      "height": "0.00",
      "prices": [
        {
          "price": 123.12
        }
      ],
      "isMain": true
    },
    "tax": {
      "tax": "20"
    },
    "supplier": "gloryfy",
    "images": [
      {
        "main": 1,
        "link": "[bildurl]"
      },
      {
        "main": 0,
        "link": "[bildurl]"
      }
    ],
    "categories": [
      {
        "id": 12080,
        "active": false,
        "blog": false,
        "showFilterGroups": false,
        "hideFilter": false,
        "hideTop": false
      }
    ]
  },
  {
    "retries": 0,
    "name": "g2 cuba libre ",
    "description": "g2 cuba libre ",
    "descriptionLong": "g2 cuba libre",
    "active": true,
    "mainDetail": {
      "number": "12121620",
      "active": true,
      "inStock": 100,
      "weight": "0.00",
      "width": "0.00",
      "height": "0.00",
      "prices": [
        {
          "price": 123.12
        }
      ],
      "isMain": true
    },
    "tax": {
      "tax": "20"
    },
    "supplier": "gloryfy",
    "images": [
      {
        "main": 1,
        "link": "[bildurl]"
      },
      {
        "main": 0,
        "link": "[bildurl]"
      }
    ],
    "categories": [
      {
        "id": 12080,
        "active": false,
        "blog": false,
        "showFilterGroups": false,
        "hideFilter": false,
        "hideTop": false
      }
    ]
  },
...]

```

[bildurl] = „http://[domain]/upload/bildname.png“

Danke!

---

<div class="post-metadata">

### Author: ![timmeyy](https://avatars.discourse-cdn.com/v4/letter/t/ad7895/32.png) [@timmeyy](https://forum.shopware.com/u/timmeyy)
#### Post date: [4. März 2016 um 12:04 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/10 "2016-03-04T12:04:59Z")

</div>

Hi,

wir haben die Bilderübertragung komplett abgekapselt vom eigentlichen Artikelexport.&nbsp;

Die Schnittstelle ist unbrauchbar wenn man die Bilder plus Varianten plus Bilder überträgt. Deswegen schreiben wir direkt in die Shopware Datenbank.

Ich weiß, nicht der eleganteste Weg, aber so ist unser Bilderexport fast schneller als der Artikelexport. Falls du Tipps brauchst kannst du dich gerne melden.

&nbsp;

VG&nbsp;

---

<div class="post-metadata">

### Author: ![MarkusM1](https://avatars.discourse-cdn.com/v4/letter/m/7ea924/32.png) [@MarkusM1](https://forum.shopware.com/u/MarkusM1)
#### Post date: [1. Februar 2017 um 15:31 UTC](https://forum.shopware.com/t/rest-api-langsam/34988/11 "2017-02-01T15:31:02Z")

</div>

> [@timmeyy schrieb:](https://forum.shopware.com/profile/22759/timmeyy "timmeyy")
> 
> Hi,
> 
> wir haben die Bilderübertragung komplett abgekapselt vom eigentlichen Artikelexport.&nbsp;
> 
> Die Schnittstelle ist unbrauchbar wenn man die Bilder plus Varianten plus Bilder überträgt. Deswegen schreiben wir direkt in die Shopware Datenbank.
> 
> Ich weiß, nicht der eleganteste Weg, aber so ist unser Bilderexport fast schneller als der Artikelexport. Falls du Tipps brauchst kannst du dich gerne melden.
> 
> &nbsp;
> 
> VG&nbsp;

&nbsp;

In der Tat, und das ist immer noch so.

Bei uns läuft im Anschluß ein Skript über verschiedene Ordner die bereits auf dem Server vorliegen und zieht sich die Bilder dann da raus.

Anders ist das bei einem halbwegs großen Shop gar nicht darstellbar.

Früher war das allerdings nochmal deutlich einfacher, aber seitdem die Bildordner gehashed werden muss man sich halt erstmal was zurechtbasteln.

&nbsp;
