Rumah > Soal Jawab > teks badan
Saya menghadapi masalah serius menggunakan aplikasi Laravel saya. Ini adalah tapak berita, tiada yang rumit. Seluruh halaman utama dicache dalam Redis sebagai HTML tulen, dan hasil pertanyaan juga disimpan dalam Redis, jadi penggunaan MySQL adalah sangat minimum. Aplikasi ini berfungsi sepenuhnya, jadi kami memutuskan untuk mengujinya dalam persekitaran pengeluaran pada waktu malam. Selepas penggunaan, kami mendapati bahawa penggunaan CPU melonjak kepada 90-100% pada semua 12 teras, jadi aplikasi berjalan sangat perlahan atau tidak sama sekali. Terdapat kira-kira 400 pengguna dan 17-20 permintaan sesaat.
Kami cuba menukar tetapan pelayan (cth. PHP-FPM) tetapi tidak berjaya. Kami menjalankan beberapa ujian menggunakan Penanda Aras Apache dan keputusan menunjukkan bahawa penggunaan CPU adalah sekitar 80-100% dengan 10 pengguna serentak. Seterusnya, kami mengulangi ujian menggunakan Laravel bersih (tanpa aplikasi kami) dengan hasil yang serupa.
Apa yang kami gunakan:
Kami mendapati bahawa cache Nginx boleh mengurangkan penggunaan CPU dalam aplikasi seperti Wordpress atau Drupal. Tetapi saya rasa Laravel tidak menggunakannya. Adakah Laravel perlu dikonfigurasikan untuk menggunakan proksi terbalik Nginx dan cache dalam beberapa cara yang istimewa?
Saya betul-betul tak tahu nak buat apa. Adakah sesiapa yang mengalami masalah yang sama?
P粉4638401702024-03-28 00:33:42
Laravel berjalan hebat pada Nginx. Saya menggunakan Nginx untuk menjalankan aplikasi saya dalam bekas di Google Cloud tanpa sebarang masalah prestasi.
Jika anda ingin menggunakan proksi pengekalan, yang ini berjaya untuk saya:
server { listen 80; your_news_app.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://localhost:8000; }
}