z4rpz4rp MemberComments: 4 Received thanks: 0 Member since: January 2020

Hallo Shopware Community!

Ich versuche aktuell Shopware auf einem recht langsamen System zu installieren.

Bei dem System handelt es sich um einen LXC Container (unter Proxmox) welches seine Daten in einem QCOW2 Image auf normalen Festplatten speichert. (Keine SSD)

Das Problem dabei ist, dass die Performance für z.B. Creates unter MySQL/MariaDB wirklich schlecht ist. Das System schreibt dabei wohl einfach viel zu oft auf die Platte.

Ich habe eigentlich so ziemlich alles an Timeouts oder Limits ausgeschlossen. Der Test das ganze mit dem PHP InBuild Server laufen zu lassen, brachte leider auch keinen Erfolg, Apache oder mein FCGID Setup kann ich also ausschließen. 

Der selbe Test läuft mit gleicher PHP Version und MariaDB Version auf einem System mit SSD's ohne Probleme durch. Mir ist im übrigen auch bewusst, dass Shopware 5 kein MariaDB Unterstütz, der Fehler ist bei Shopware 6 aber der selbe und die eigentliche Installation funktioniert mit dieser MariaDB Version auch ohne Probleme.

Generell kann ich eine Inkompatibilität ausschließen. Das Setup läuft ohne Probleme durch wenn ich es über die Shell ausführe. Nur die Installation übers Web bricht ab.

Um genau zu sein tritt der Fehler immer beim Datenbank Import auf und bricht dann mit Identifier DB not initialized yet ab.

Hat hier jemand vielleicht einen Tip? Setzt das Shopware Setup vielleicht selbst noch irgendwelche Timeouts von denen ich nichts weis? Ich habe z.B. gesehen dass das Setup die max_execution_time auf 120 "erhöht" was natürlich blöd ist wenn ich diese bereits viel höher gestellt habe. Aber sonst konnte ich keine festen Limits finden.

Comments

  • R4MR4M MemberComments: 2925 Received thanks: 477 edited January 2020 Member since: April 2014

    Vielleicht noch memory_limit auf 512M umstellen und noch mal probieren.

  • z4rpz4rp MemberComments: 4 Received thanks: 0 Member since: January 2020

    Vielleicht noch memory_limit auf 512M umstellen und noch mal probieren.

    memory_limit und dergleichen habe ich alle bereits angepasst. Daran liegt es leider nicht. 

  • R4MR4M MemberComments: 2925 Received thanks: 477 edited January 2020 Member since: April 2014

    Ich versuche aktuell Shopware auf einem recht langsamen System zu installieren

    Nun ja, was soll jetzt dazu noch schreiben? :-) Wenn du dir ein schwaches System für Shopware aussuchst, dann musst du dies verbessern oder anderen Server nutzen. Shopware ist kein Wordpress, es brauch halt etwas mehr Ressourcen inkl. sogar MySQL-Tuning. Da können unzähliche Faktoren hier noch eine Rolle spielen. 

    Welche Shopware-Version hast du denn jetzt? Welche PHP- und MySQL-Version ist im Einsatz. Wie hoch ist der Arbeitsspeicher? ... und und und ...

  • z4rpz4rp MemberComments: 4 Received thanks: 0 Member since: January 2020

    Dass das ganze dann grotten Lam läuft ist mir natürlich bewusst. Aber funktionierten sollte das Setup schon. Gibt wirklich keinen mir ersichtilchen Grund, warumd as Setup einfach abbrechen sollte. Wie gesagt, Timeouts und Limits sind alle mehr als Großzügig Eingestellt.

    PHP waren 7.2 und 7.3. Datenbank ist MariaDB 10.3. RAM sind 6 GB davon 1GB als memory_limit zugewiesen. OOM hat der Container keinen.

  • z4rpz4rp MemberComments: 4 Received thanks: 0 Member since: January 2020

    Für all die jenigen, welche ebenfalls das selbe Problem haben. Die Lösung ist recht simpel. Nicht nur setzt der Installer die max_execution_time auf 120 sonder setzt auch mittels session_set_cookie_params die Cookie Lifetime auf 10 Minuten...

  • R4MR4M MemberComments: 2925 Received thanks: 477 Member since: April 2014

    Hm, jetzt überlege ich was "session_set_cookie_params" mit der Datenbank zu tun hat.

  • z4rpz4rp MemberComments: 4 Received thanks: 0 Member since: January 2020

    Wenn die Datenbank langsam ist, dauert die Installation länger. Wenn die Installation länger als 10 Minuten braucht, läuft die Session aus, was zum Abbruch der Installation führt.

  • ITSEITSE MemberComments: 13 Received thanks: 5 Member since: March 2013

    Sind ja doch immer noch einige, die die Installation wegen eines Abbruchfehlers nicht schaffen.

    Der Ansatz oben mit den Cookies ist richtig. Shopware setzt ein Cookie, da könnt ihr am Server bzw. System einstellen was ihr wollt. Nach 10 Minuten ist Schluß.
    Get zur Datei                      /vendor/shopware/recovery/Install/src/app.php
    und ändert den TimeOut. Ich habe verdoppelt von 7200 auf 14400. Dann habt Ihr 20 Minuten Zeit.

    $cookie = new SetCookie('installed-locale', $localeForLanguage($selectedLanguage), time() + 14400, '/');    //7200

     

    evtl. kann man noch am Anfang in der Datei mit der 600 bei

                                       session_set_cookie_params(600, $sessionPath);  

    spielen. Bei mir ging es auch ohne.

Sign In or Register to comment.