webentwicklung-frage-antwort-db.com.de

Laravel Handwerker optimieren Best Practices

Ich versuche, den Befehl und die bewährten Methoden von Laravel (5.1) artisan optimize vollständig zu verstehen, aber die Dokumentation scheint zu fehlen. Ich habe Composer nicht auf dem Produktionsserver installiert. Insbesondere möchte ich wissen, welche Dateien geändert oder erstellt werden, wenn artisan optimize --force in der Entwicklung ausgeführt wird, die in die Produktion übertragen werden müssen. Ziel ist es, die App in der Produktion nicht in die Luft zu sprengen! Nachdem der Befehl ausgeführt wurde, werden folgende Dateien geändert:

\bootstrap\cache\compiled.php
\vendor\composer\ - the entire directory
\vendor\autoload.php

Denken Sie darüber nach, oder pushen Sie diese Dateien einfach in die Produktion, und ich bin bereit zu gehen? Was ist auch die beste Vorgehensweise, wenn Sie artisan optimize ausführen möchten? Jedes Mal, wenn ein neues Modell erstellt wird? Was ist mit Controllern, Routen und Hilfsklassen? 

Zuletzt sehe ich, dass die \bootstrap\cache\compiled.php-Datei satte 548KB und fast 17K Zeilen ist! Ist das wirklich optimal?

13
suncoastkid

[edit - Wie @crishoj sagt, wird ab Laravel 5.5 PHP-Optimierung nicht mehr benötigt]

Normal Laravel üben Sie is, um Composer auf Ihrem Produktionsserver zu installieren.

Dies sind die Schritte, die Envoyer (erstellt von Laravel's Creator) zur Bereitstellung einer App für die Produktion durchführt - ich habe sie unten kommentiert:

# Install application dependencies, such as the Laravel framework itself.
#
# If you run composer update in development and commit the `composer.lock`
# file to your repository, then `composer install` will install the exact
# same versions in production.
composer install --no-interaction

# Clear the old boostrap/cache/compiled.php
php artisan clear-compiled

# Recreate boostrap/cache/compiled.php
php artisan optimize

# Migrate any database changes
php artisan migrate
14
Ben Claar

Ab Laravel 5.5 ist php artisan optimize nicht mehr erforderlich.

8
crishoj

Sie können auch von Laravel-Paketen profitieren, um Ihre Anwendung auf einfache Weise zu optimieren, indem Sie Seitenteile im Cache speichern

https://github.com/imanghafoori1/laravel-widgetize

0
Iman Ghafoori