Heim > Backend-Entwicklung > PHP-Tutorial > Symfony on Vagrant Performance Hacks - Sulucms Fallstudie

Symfony on Vagrant Performance Hacks - Sulucms Fallstudie

Christopher Nolan
Freigeben: 2025-02-15 13:01:12
Original
183 Leute haben es durchsucht

Symfony on Vagrant Performance Hacks - SuluCMS Case Study

Schlüsselpunkte: Dieses Tutorial optimiert Sulu, ein symfonybasiertes CMS, für eine schnellere Leistung in einer vagranten Umgebung. Es befasst sich mit Symfonys inhärenten Langsamkeit auf virtuellen Maschinen mit gemeinsam genutzten Dateisystemen. Die detaillierten Techniken gelten für jede Symfony -Anwendung.

Diese Handbuchdetails Einrichten von Sulu auf Vagrant, einschließlich Box -Download, Ordnerfreigabekonfiguration, Sulu -Installation und entscheidende Leistungsverbesserungen. Nach der Anwendung dieser Optimierungen sollten sowohl https://test.app/admin als auch https://test.app signifikant schneller sein.

Einrichten und Optimieren von Sulu auf Vagrant

Wir werden das Homestead verbessert, aber die Prinzipien gelten im Großen und Ganzen.

1. Erstes Setup:

  • Klon Das Gehöft verbesserte das Repository und konfigurieren Sie die Ordnerfreigabe:
    git clone https://github.com/swader/homestead_improved hi_sulu
    cd hi_sulu; bin/folderfix.sh
    Nach dem Login kopieren
  • Stellen Sie die Dateifreigabe auf NFS fest (empfohlen, bekannte Probleme zu mildern).
  • Fügen Sie Homestead.yaml:
    - map: test.app
      to: /home/vagrant/Code/sulu/web
      type: symfony-sulu
    Nach dem Login kopieren
    eine neue Site hinzu

    (Die bereitgestellte Nginx-Konfiguration ist entscheidend; passen Sie sich nach Bedarf für Nicht-Homestead-Umgebungen an.)

2. Vagrant- und Sulu -Installation:

  • starten Sie die VM und SSH in:
    vagrant up; vagrant ssh
    Nach dem Login kopieren
  • add test.app zu der /etc/hosts -Fatei Ihres Hosts.
  • Sulu installieren:
    cd Code
    git clone https://github.com/sulu-io/sulu-standard sulu; cd sulu
    git checkout master
    composer install
    Nach dem Login kopieren

    (adressieren Sie potenzielle PHP -Versionen; Upgrade bei Bedarf mit sudo apt-get upgrade php7.0-fpm.)

  • Sulu konfigurieren (Datenbankdetails erforderlich):
    cp app/Resources/webspaces/sulu.io.xml.dist app/Resources/webspaces/sulu.io.xml
    cp app/Resources/pages/default.xml.dist app/Resources/pages/default.xml
    cp app/Resources/pages/overview.xml.dist app/Resources/pages/overview.xml
    cp app/Resources/snippets/default.xml.dist app/Resources/snippets/default.xml
    rm -rf app/cache/*
    rm -rf app/logs/*
    Nach dem Login kopieren
  • Befehl ausführen (Entwicklungsumgebung):
    app/console sulu:build dev
    Nach dem Login kopieren
  • Vermögen generieren:
    app/console assetic:dump
    Nach dem Login kopieren
  • Dev -Modus in web/admin.php und web/website.php aktivieren (ändern Sie SYMFONY_ENV zu dev).

Symfony on Vagrant Performance Hacks - SuluCMS Case Study

3. Leistungsoptimierung Hacks:

  • log- und cache -Optimierung: Methoden app/AbstractKernel.php und getCacheDir für Dev/Test -Umgebungen getLogDir und /dev/shm. Dies verschiebt Protokolle und Cache in VM-Local Storage.
  • Vendor-Verzeichnis verschieben: Verschieben Sie das Verzeichnis vendor auf einen VM-Local-Pfad (z. B. /home/vagrant/vendors/sulu-test.app). Dies verbessert die Leistung erheblich, indem der Zugriff auf gemeinsam genutztes Dateisystem vermieden wird. (detaillierte Schritte finden Sie im ursprünglichen Artikel zur manuellen Anpassung.) Verwenden Sie das bereitgestellte Skript ~/Code/bin/sulu/vendorfix.sh oder befolgen Sie die manuellen Schritte. Aktualisieren Sie Ihre IDEs entsprechend den Pfad.
  • Aktivieren Sie das APC -Caching: APC Autoloader Caching in web/website.php und web/admin.php.
  • Zusätzliche Optimierungen: Erhöhen Sie realpath_cache_size und realpath_cache_ttl in /etc/php/7.0/fpm/php.ini. Betrachten Sie die Installation der Twig C -Erweiterung und Deaktivierung von XDebug (sudo phpdismod xdebug; sudo service php7.0-fpm restart).

Symfony on Vagrant Performance Hacks - SuluCMS Case Study

4. Fehlerbehebung:

adressieren gemeinsame Probleme wie abgestandener Cache, falsche Klassenorte (verwenden Sie app/console cache:clear, rm -rf app/cache/*, composer update) und APC -Cache -Busting (apc_clear_cache()). Optimieren Sie das Debuggen bei Bedarf.

Schlussfolgerung:

Diese Optimierungen verbessern die Leistung von Sulu auf Vagrant dramatisch. Die Techniken, insbesondere der Umzug und die Optimierung des Anbieters Verzeichnis, sind weit verbreitet für jedes Symfony -Projekt. Denken Sie daran, die Pfade und Konfigurationen an Ihr spezifisches Setup anzupassen. Der FAQS -Abschnitt enthält einen weiteren Kontext und beantwortet gemeinsame Fragen zu Symfony, Sulu und Vagrant -Leistung.

Das obige ist der detaillierte Inhalt vonSymfony on Vagrant Performance Hacks - Sulucms Fallstudie. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage