12 sposobów na zoptymalizowanie Laravela w 2020 roku
Laravel od samego początku znajduje zastosowanie nie tylko w niewielkich projektach, ale również w zaawansowanych aplikacjach biznesowych opierających się na zarządzaniu informacjami i sprzedażą. W takich rozwiązaniach niezwykle ważna jest odpowiednia optymalizacja. Właśnie dlatego dziś zajmiemy się sposobami na dostosowanie wydajności Laravela.
Dlaczego firmy powinny skupić się na optymalizacji wydajności Laravel?
W założeniach Laravel, jak każdy inny framework, ma usprawnić i ułatwić tworzenie nowych aplikacji. Mimo iż jest to bardzo kompleksowy i przemyślany framework, nie można zapominać o jego optymalizacji, co przekłada się na wydajność już po wdrożeniu.
W kontekście aplikacji biznesowych to właśnie optymalizacja i wydajność są kluczowymi aspektami. W dłuższej perspektywie przekłada się to na wyniki finansowe oraz zadowolenie klienta. Projekty ściśle powiązane z zarządzaniem danymi muszą działać szybko i wydajnie.
Poniżej prezentujemy garść wskazówek, które przekładają się bezpośrednio na wspomnianą wydajność. Zapraszamy!
Konfiguracja buforowania / Config Caching
Artisan Cache Config to pierwsze z polecenie pomocne przy zwiększaniu wydajności Laravela. Podstawową komendą jest:
php artisan config:cache
Aby odświeżyć pamięć podręczną, wystarczy wpisać ponownie polecenie. Gdy chcesz wyczyścić cache, użyj polecenia:
php artisan config:clear
W celu uzyskania jeszcze lepszej optymalizacji skorzystaj z OPcache buforującego kod PHP.
Route Caching
W przypadku rozbudowanych aplikacji ta funkcja może zwiększyć nawet dwukrotnie liczbę żądań na sekundę. Aby z niej skorzystać, trzeba użyć polecenia:
php artisan route:cache
Należy pamiętać o tym, aby uruchomić polecenie za każdym razem, gdy zostanie zmieniona konfiguracja. W przeciwnym razie Laravel będzie korzystał z nieaktualnych danych w pamięci podręcznej. Aby wyczyścić pamięć podręczną, wykorzystaj polecenie:
php artisan route:clear
Wyłączaj to, co niepotrzebne
Jedną z najprostszych metod, która powinna być zawsze stosowana w kontekście wydajności aplikacji, jest unikanie ładowania wszystkich usług. Dobrym nawykiem będzie każdorazowe wyłączanie nieużywanych usług w plikach konfiguracyjnych oraz dodanie odpowiednich komentarzy.
Optymalizacja mapy klas
Nawet średniej wielkości aplikacje posiadają rozbudowany system plików. To również pole do optymalizacji. Dzięki zadeklarowaniu wszystkich plików dołączanych do zapytania zostaną „załadowane” do pojedynczego pliku. Aby to zrobić, skorzystaj z komendy:
php artisan optimize –force
Ogranicz dołączone biblioteki
Bez wątpienia ilość dostępnych bibliotek, które można zawrzeć w aplikacji korzystającej z Laravela, jest jedną z jego największych zalet. Jednak potrafi to znacząco spowolnić jej działanie. Dlatego należy prześledzić wszystkie wykorzystywane biblioteki. Jeśli zauważysz, że uzyskasz ten sam efekt bez korzystania z nich, po prostu je usuń z config/app.php. Pod tym samym kątem warto również przeanalizować composer.json.
Kompilator JIT
Samo przetłumaczenie kodu PHP na bajtowy, a następnie wykonanie go jest procesem wymagającym określonej ilości zasobów. Co więcej, powtarzany jest za każdym razem podczas korzystania z aplikacji. Aby zoptymalizować ten proces i skrócić jego czas, warto korzystać z kompilatorów Just-in-Time (JIT). W przypadku Laravela najczęściej poleca się HHVM od Facebooka.
Wybierz sterownik szybkiej pamięci podręcznej i sesji
Kolejnym punktem mającym na celu usprawnienie działania aplikacji, będzie miejsce przechowywania pamięci podręcznej. W tym celu najlepszą metoda będzie przechowywanie jej w pamięci RAM. Jednym z najszybszych sterowników cache jest Memcached.
Użyj sieci CDN do dostarczania zasobów statycznych
Również po stronie serwera możemy sporo zrobić, aby zoptymalizować naszą aplikację. Co na przykład? Ładować statyczne pliki z serwera CDN, zamiast bezpośrednio z serwera, gdzie znajdują się pliki.
Minifikacja zasobów
Kompilowanie zasobów do jednego miejsca często skutkuje stworzeniem ogromnego pliku, sprzecznego z naszymi metodami optymalizacji. W tym celu warto zminimalizować zasoby za pomocą Laravel Mix. W tym celu stosujemy:
npm run production
Zminimalizowanie zasobów sprawi, że będą szybciej pobierane, a przez to aplikacja przyspieszy.
Uruchomiona najnowsza wersja PHP
Każda kolejna wersja PHP przynosi zmiany, które wpływają na wydajność. Właśnie dlatego zadbanie o to, aby aplikacja działała w najnowszej wersji PHP, jest podstawą. W ten sposób będziesz miał pewność, że korzystasz z wszystkich najnowszych rozwiązań i ulepszeń. Zmiana PHP zazwyczaj odbywa się z poziomu panelu administracyjnego za jednym kliknięciem.
Laravel Debugbar
Na koniec zostawiliśmy nie tyle technikę optymalizacji, ile cały pakiet. Laravel Debugbar integruje Debug Bar z Laravelem i może być wykorzystywany jako monitor wydajności. Ponieważ w ten sposób z łatwością sprawdzisz stan działania naszej aplikacji, zalecane jest korzystanie z Laravel Debugbara na etapie produkcji.
Powyżej przedstawiliśmy podstawowe techniki, które cechują się uniwersalnością. Sprawdzą się zarówno w mniejszych projektach, jak i rozbudowanych aplikacjach biznesowych przetwarzających duże ilości danych. Warto pamiętać o optymalizacji już od samego początku. Mówi się, że lepiej zapobiegać, niż leczyć – i śmiało możemy to powiedzenie traktować poważnie również w kontekście tworzenia nowych aplikacji.
Dodaj komentarz