Buforowanie
konfiguracji Konfiguracja laravel jest rozłożona na dziesiątki plików, a including
każdy z nich dla każdego żądania jest kosztownym procesem. Aby połączyć wszystkie pliki konfiguracyjne w jeden, użyj:
php artisan config:cache
Pamiętaj, że wszelkie zmiany w konfiguracji nie będą miały żadnego efektu po jej zbuforowaniu. Aby odświeżyć pamięć podręczną konfiguracji, uruchom ponownie powyższe polecenie. Jeśli chcesz całkowicie pozbyć się pamięci podręcznej konfiguracji, uruchom
php artisan config:clear
Buforowanie tras
Routing jest kosztownym zadaniem w laravel. Aby buforować plik route.php, uruchom poniższe polecenie:
php artisan route:cache
Pamiętaj, że to nie działa z zamknięciami. Jeśli używasz domknięć, jest to świetna szansa na przeniesienie ich do kontrolera, ponieważ polecenie rzemieślnika zgłosi wyjątek podczas próby kompilowania tras, które są powiązane z domknięciami, zamiast odpowiednich metod kontrolera. Podobnie jak w przypadku pamięci podręcznej konfiguracji, wszelkie zmiany w route.php nie będą już miały żadnego wpływu. Aby odświeżyć pamięć podręczną, uruchom powyższe polecenie za każdym razem, gdy dokonujesz zmiany w pliku tras. Aby całkowicie pozbyć się pamięci podręcznej tras, uruchom poniższe polecenie:
php artisan route:clear
Optymalizacja mapy klas
Często zdarza się, że średniej wielkości projekt jest rozłożony na setki plików PHP. Jak nakazują nam dobre zachowania kodowania, wszystko ma swój własny plik. Nie jest to oczywiście pozbawione wad. Laravel musi zawierać dziesiątki różnych plików dla każdego żądania, co jest kosztowną czynnością.
Dlatego dobrą metodą optymalizacji jest zadeklarowanie, które pliki są używane dla każdego żądania (są to na przykład wszyscy dostawcy usług, oprogramowanie pośredniczące i kilka innych) i połączenie ich w tylko jeden plik, który zostanie następnie załadowany dla każdego żądania. Nie różni się to od łączenia wszystkich plików javascript w jeden, więc przeglądarka będzie musiała wysyłać mniej żądań do serwera.
Dodatkowe pliki kompilacji (ponownie: dostawcy usług, oprogramowanie pośredniczące itd.) Powinny być zadeklarowane przez Ciebie w config / compile.php, w kluczu plików. Gdy umieścisz tam wszystko, co jest niezbędne dla każdego żądania skierowanego do Twojej aplikacji, połącz je w jednym pliku z:
php artisan optimize --force
Optymalizacja automatycznego ładowania kompozytora
Ten jest przeznaczony nie tylko dla laravel, ale dla każdej aplikacji korzystającej z kompozytora.
Najpierw wyjaśnię, jak działa automatyczne ładowanie PSR-4, a następnie pokażę, jakie polecenie należy uruchomić, aby go zoptymalizować. Jeśli nie chcesz wiedzieć, jak działa kompozytor, polecam przeskoczyć bezpośrednio do polecenia konsoli.
Kiedy pytasz kompozytora o App\Controllers\AuthController
zajęcia, najpierw szuka on bezpośredniego skojarzenia w mapie klasy. Mapa klas to tablica z powiązaniami 1 do 1 klas i plików. Ponieważ, oczywiście, nie dodałeś ręcznie klasy Login i skojarzonego z nią pliku do mapy klas, composer przejdzie dalej i przeszuka przestrzenie nazw. Ponieważ aplikacja jest przestrzenią nazw PSR-4, która jest domyślnie dostarczana z Laravelem i jest powiązana z app/
folderem, composer spróbuje przekonwertować nazwę klasy PSR-4 na nazwę pliku z podstawowymi procedurami manipulacji na ciągach. W końcu zgaduje, że App\Controllers\AuthController
musi znajdować się w pliku AuthController.php, który znajduje się w Controllers/
folderze, który na szczęście powinien znajdować się w folderze przestrzeni nazw, którym jestapp/
.
Cała ta ciężka praca polega tylko na tym, aby App\Controllers\AuthController
klasa istniała w app/Controllers/AuthController.php
pliku. Aby kompozytor przeskanował całą aplikację i utworzył bezpośrednie skojarzenia 1 do 1 klas i plików, uruchom następujące polecenie:
composer dumpautoload -o
Pamiętaj, że jeśli już uruchomiłeś php artisan optimize --force, nie musisz już tego uruchamiać. Ponieważ polecenie optymalizacji już nakazuje kompozytorowi utworzenie zoptymalizowanego automatycznego ładowania.