Cara menggunakan php code optimizer online

Seiring berjalannya waktu, framework laravel sudah menjadi sangat populer bagi para programmer website. Khususnya yang berkecimpung di dunia pemrograman backend.

Laravel sudah digunakan untuk membuat berbagai macam sistem, dan aplikasi berbasis website. Mulai dari yang sederhana seperti Todo List, sampai aplikasi berbasis ERP pernah dibuat menggunakan framework Laravel.

Kenapa Proses Bisnis Harus Fokus pada Pengoptimalan Kinerja Laravel ?

Struktur dari framework Laravel, dan libraries atau package yang saling terkait memberikan kenyamanan bagi para developer untuk membuat berbagai fitur dengan effort yang minim.

Performance dan Optimization adalah dua faktor kunci untuk menentukan kelancaran suatu Bisnis Aplikasi. Dalam hal ini, memastikan performa dari aplikasi Laravel adalah skill yang krusial yang harus dimiliki setiap programmer ketika mengerjakan project dari klien. Karena Laravel sering kali digunakan untuk membuat Sistem berbasis Informasi, performa dari framework Laravel sangat berpengaruh terhadap kelancaran sebuah sistem aplikasi. Dalam banyak kasus, sistem manajemen informasi yang memberikan dukungan pengambilan keputusan kepada lapisan manajemen harus cepat dan berkinerja tinggi setiap saat.

Tips to Improve Laravel Performance
  1. Config caching
  2. Routes caching
  3. Menghapus service yang tidak terpakai
  4. Classmap optimization
  5. Optimizing the composer autoload
  6. Membatasi Penggunaan banyak plugins
  7. JIT Compiler
  8. Memilih cache and session driver yang lebih cepat
  9. Membuat Cache dari Hasil Query
  10. Menggunakan “Eager Loading” untuk mengambil data
  11. Precompile Assets
  12. Menggunakan CDN untuk static assets.
  13. Asset Bundling
  14. Asset Minifying
  15. Menjalankan PHP versi terbaru
  16. Menggunakan Laravel Debugbar
  17. General Performance Tuning Tips for Laravel :
  • Laravel page speed composer package
  • Update Provider Details
  • Publish the package
  • Adding middleware for web access
  • View page details

18. Menggunakan Stack Untuk Meningkatkan Performa

19. Kesimpulan

1. Config Caching

Laravel menyediakan command yang sangat menarik, Artisan cache config ini sangat membantu untuk meningkatkan performa. Untuk menggunakannya, bisa menjalankan perintah:

php artisan config:cache

Saat menjalankannya pertama kali, tidak akan terlihat pengaruhnya. Jika kamu akan me-refresh config, jalankan perintah diatas sekali lagi. Untuk menghapus cache, bisa menjalankan perintah berikut:

php artisan config:clear

2. Route Caching

Route caching adalah fitur pengoptimalan yang penting. Terutama, untuk aplikasi yang memiliki banyak route dan config. Cache dari route ini adalah sebuah array yang membantu mempercepat performa dari Laravel, karena performa yang lebih cepat dalam memuat sebuah array. Untuk menjalankannya jalankan perintah:

php artisan route:cache

! Perlu diingat untuk menjalankan perintah ini, setiap kali ada perubahan di

php artisan config:clear
5 atau file
php artisan config:clear
6 dari Laravel. Sebaliknya, Laravel akan memuat perubahan yang paling baru. Untuk menghapus cache, gunakan perintah berikut:

php artisan route:clear

3. Menghapus service yang tidak terpakai

Untuk pengoptimalan performa dari Laravel, salah satu point pentingnya adalah tidak me-load semua service dari

php artisan config:clear
5. Maka dari itu, Selalu ingat untuk menonaktifkan
php artisan config:clear
8 di dalam file
php artisan config:clear
5 yang tidak terpakai.

Bisa ditambahkan comment agar tidak lupa.

4. Classmap Optimization

Bahkan, aplikasi Laravel tingkat menengah sekalipun memiliki sudah memiliki file yang tidak sedikit karena Laravel mempunyai ‘habit’ atau kebiasaan memangggil semua file yang ter ‘include’ dalam sebuah request. Ada sebuah trik sederhana untuk menyertakan semua file yang ter’include’ kedalam sebuah file. Jadi, untuk semua request, hanya akan memuat satu file saja. Untuk menjalankannya gunakan perintah ini:

php artisan optimize --force

5. Composer Optimize Autoload

Ide yang bagus juga, untuk men’scan’ aplikasi Laravel kita menggunakan Composer dan membuat sebuah relasi satu-ke-satu dari semua class dan file yang ada. Gunakan perintah berikut:

composer dumpautoload -o

6. Membatasi Library Yang Ada

Hal yang baik dari Laravel adalah banyaknya

php artisan route:cache
0 yang dapat disertakan dalam suatu aplikasi. Meskipun ini adalah hal yang baik, sisi negatifnya adalah tingkat hambatan yang tinggi yang dialami aplikasi dan performa keseluruhan yang melambat.

Inilah sebabnya mengapa penting untuk meninjau semua

php artisan route:cache
0 yang dipanggil kembali dalam kode. Jika Anda merasa bisa melakukannya tanpa
php artisan route:cache
0, hapus dari config/app.php untuk mempercepat aplikasi Laravel. Tempat penting lainnya untuk dilihat adalah composer.json.

7. JIT Compiler

Menerjemahkan kode PHP ke bytecode dan kemudian mengeksekusinya adalah proses resource-intensive. Inilah sebabnya mengapa perantara seperti Zend Engine diperlukan untuk menjalankan subroutine C. Proses ini harus diulang setiap kali aplikasi dijalankan. Untuk memangkas waktu, maka proses ini harus diulang sekali saja. Di sinilah kompiler Just-in-Time (JIT) terbukti sangat berguna. Untuk aplikasi Laravel, kompiler JIT yang direkomendasikan adalah HHVM oleh Facebook.

8. Memilih Cache dan Session Driver yang lebih cepat

Untuk penyetelan kinerja Laravel yang optimal, jalan terbaik adalah menyimpan bagian cache dan session di RAM. Saya percaya cache dan driver session tercepat untuk kinerja Laravel adalah Memcached.

Pengaturan driver untuk mengubah driver session biasanya terletak di app/config/session.php. Demikian juga, kunci driver untuk mengubah driver cache terletak di app/config/cache.php

9. Membuat Cache dari hasil Query

Caching hasil kueri yang sering dijalankan adalah cara yang bagus untuk meningkatkan kinerja Laravel. Untuk ini, saya merekomendasikan

php artisan route:cache
3
php artisan route:cache
4, yang digunakan sebagai berikut:

$posts = Cache::remember('index.posts', 30, function() {
return Post::with('comments', 'tags', 'author', 'seo')->whereHidden(0)->get();
});

10. Mengunakan “Eager Loading” untuk setiap Data

Laravel menawarkan ORM yang bagus untuk menangani database. Yang dikenal sebagai Eloquent, ia menciptakan model yang mengabstraksi tabel database dari developer lain. Menggunakan struktur sederhana, developer dapat menggunakan Eloquent untuk menangani semua operasi CRUD di PHP. Ketika Eloquent menggunakan

php artisan route:cache
5, ia mengambil semua model objek terkait sebagai respons terhadap
php artisan route:cache
6. Ini menambah respons aplikasi. Mari kita bandingkan
php artisan route:cache
7dan
php artisan route:cache
5:

//asumsi di table product_detail ada 16 row//Lazy loading
$products = Product::all();
foreach ($products as $product) {
echo $product->productDetail->name;
}
// total query 16
// tabel product : 1
SELECT * FROM product;
// tabel product detail : 15

SELECT * FROM product_detail WHERE 'product'.'id' = ? limit 1;
SELECT * FROM product_detail WHERE 'product'.'id' = ? limit 1;
SELECT * FROM product_detail WHERE 'product'.'id' = ? limit 1;
....
//Eager Loading
$products = Product::with([‘productDetail’])->get();
foreach ($products as $product) {
echo $product->productDetail->name;
}
// total query 2
// tabel product : 1
SELECT * FROM product;
// tabel product detail : 1

SELECT * FROM product_detail WHERE id IN (1, 2, 3, ...) limit 1;

11. Precompile Assets

Untuk penyetelan aplikasi Laravel, developer sering mendistribusikan kode ke dalam file-file terpisah. Meskipun ini membuat kode tetap bersih dan dapat dikelola, ini tidak berkontribusi pada produksi yang efisien. Untuk membantu pengembang dalam konteks ini, Laravel menyediakan perintah sederhana:

php artisan optimize
php artisan config:cache
php artisan route:cache

12. Gunakan CDN untuk mengirim Static Assets

Memuat file aset statis dari server CDN (berlawanan dengan memuatnya langsung dari server yang menghosting file) akan meningkatkan kinerja aplikasi Laravel.

Setelah klien mengunjungi situs, sebagian informasi disajikan dari area CDN terdekat. Hasil ini adalah kecepatan tumpukan halaman yang pada dasarnya cepat dan hal yang sangat berguna bagi klien. Ini berarti Anda harus mengkarakterisasi sumber daya statis (JS, CSS, HTML, gambar, rekaman, dan keaktifan, dan sebagainya.) pada aplikasi tertentu.

13. Asset Bundling

Laravel Mix hadir secara default dalam aplikasi Laravel. Menggunakan beberapa praprosesor CSS dan JavaScript yang umum, Laravel Mix menyediakan API yang efektif untuk mendefinisikan pembuatan Webpack untuk aplikasi PHP Anda. Untuk mengkompilasi aset aplikasi termasuk skrip, style, dan lainnya, saya akan menggunakan Laravel Mix untuk kompilasi. Dengan itu, kita dapat menggabungkan beberapa stylesheet secara efisien ke dalam satu file.

mix.styles([
'public/css/vendor/normalize.css',
'public/css/styles.css'
], 'public/css/all.css');

Ini akan membuat sebuah file

php artisan route:cache
9 yang berisi style dari
php artisan route:clear
0 dan
php artisan route:clear
1. Dengan cara ini, kita dapat menggunakan
php artisan route:cache
9 dalam HTML kita dengan mudah, daripada memasukkan
php artisan route:clear
0 dan
php artisan route:clear
1 satu per satu. Ini, pada saatnya, akan mengurangi jumlah permintaan HTTP yang diperlukan untuk mengambil file-file ini satu per satu. Karena sekarang hanya membutuhkan satu permintaan, bukan dua untuk mengambil file. Dan sebagai hasilnya, kita akan melihat sedikit peningkatan dalam kecepatan aplikasi kami.

14. Asset Minifying

Mengkompilasi semua aset di satu tempat mungkin berakhir dengan file berukuran besar. Akibatnya, praktik ini tidak akan menjadikan aplikasi kita untuk merasakan manfaatnya dari kompilasi yang diterapkan. Oleh karena itu untuk mengatasi masalah ini, kita dapat mengecilkan aset kita menggunakan Laravel Mix. Gunakan perintah berikut:

php artisan config:clear
0

Ini akan menjalankan semua taxes dari Laravel Mix dan memastikan aset kita siap untuk production dengan mengecilkannya. Setelah diperkecil, aset akan menjadi lebih kecil ukurannya, sehingga akan dimuat lebih cepat, yang akan mempercepat kinerja aplikasi kita.

15. Menjalankan versi terbaru dari PHP

Versi terbaru PHP telah membawa peningkatan signifikan dalam kinerjanya. Oleh karena itu, pastikan aplikasi Laravel Anda menjalankan PHP versi terbaru sehingga Anda dapat memanfaatkan semua peningkatan kinerja yang diperkenalkan dalam versi baru di aplikasi Anda.

16. Mengunakan Laravel Debugbar

Meskipun bukan teknik optimasi, tetapi sebuah

php artisan route:clear
5. Laravel Debugbar adalah paket untuk mengintegrasikan PHP Debug Bar dengan Laravel. Ini termasuk
php artisan route:clear
6 untuk mendaftarkan debugbar dan melampirkannya ke output. Ini adalah paket yang dapat digunakan sebagai monitor kinerja Laravel. Disarankan untuk menggunakan paket ini saat mengembangkan aplikasi Anda. Karena dengan itu, Anda dapat dengan mudah memeriksa bagaimana aplikasi Anda berjalan, dan kemudian meningkatkannya.

Lebih lanjut bisa dilihat disini.

17. General Performance Tuning Tips for Laravel :

  • Laravel page speed composer package

Untuk menginstallnya menggunakan

php artisan route:clear
7 jalankan perintah:

php artisan config:clear
1
  • Update Provider Details

Kemudian buka file

php artisan route:clear
8 , tambahkan
php artisan route:clear
6 milik
php artisan optimize --force
0

php artisan config:clear
2
  • Publish the package

Kemudian

php artisan optimize --force
1 package nya untuk mengimplementasikan didalam aplikasi Laravel kita.

php artisan config:clear
3
  • Adding middleware for web access

Setelah memublikasikan package, kita perlu menambahkan detail middleware di file

php artisan optimize --force
2. Kamu bisa menyalin dan tempel kode berikut di bawah
php artisan optimize --force
3

php artisan config:clear
4

18. Menggunakan Stack Untuk Meningkatkan Performa

Dikenal sebagai ThunderStack, stack khusus ini dirancang untuk meningkatkan kinerja aplikasi Laravel. Resep terbaik terdiri dari Apache dan NGINX, Varnish dan Memcached. Di sisi database, Anda memiliki pilihan MySQL atau MariaDB. Selain itu, Anda dapat mengaktifkan Redis sebagai driver session atau dapat mengonfigurasi Varnish sesuai dengan kebutuhan proyek.

19. Kesimpulan

Mungkin itu yang bisa saya tulis kali ini, tidak harus menerapkan semuanya pada aplikasi Laravel. Tapi pilihlah cara terbaik yang bisa digunakan untuk meningkatkan performa dan kecepatan Laravel milikmu sendiri.