Rumah >pembangunan bahagian belakang >tutorial php >Symfony on Vagrant Prestasi Hacks - Kajian Kes Sulucms

Symfony on Vagrant Prestasi Hacks - Kajian Kes Sulucms

Christopher Nolan
Christopher Nolanasal
2025-02-15 13:01:12180semak imbas

Symfony on Vagrant Performance Hacks - SuluCMS Case Study

Titik utama: Tutorial ini mengoptimumkan Sulu, CMS berasaskan simfoni, untuk prestasi yang lebih cepat dalam persekitaran yang vagrant. Ia menangani kelambatan yang wujud Symfony pada mesin maya dengan sistem fail yang dikongsi. Teknik terperinci boleh digunakan untuk sebarang aplikasi Symfony.

Butiran panduan ini menyediakan sulu pada vagrant, termasuk muat turun kotak, konfigurasi perkongsian folder, pemasangan sulu, dan peningkatan prestasi penting. Selepas menggunakan pengoptimuman ini, kedua -dua

dan https://test.app/admin harus lebih cepat. https://test.app

Menyediakan dan mengoptimumkan sulu pada vagrant

Kami akan menggunakan Homestead bertambah baik, tetapi prinsip -prinsipnya digunakan secara meluas.

1. Persediaan Awal:

    klon Homestead meningkatkan repositori dan konfigurasi perkongsian folder:
  • <code class="language-bash">git clone https://github.com/swader/homestead_improved hi_sulu
    cd hi_sulu; bin/folderfix.sh</code>
  • Tetapkan perkongsian fail ke NFS (disyorkan untuk mengurangkan isu yang diketahui).
  • tambahkan tapak baru ke
  • : Homestead.yaml
    <code class="language-yaml">- map: test.app
      to: /home/vagrant/Code/sulu/web
      type: symfony-sulu</code>

    (konfigurasi Nginx yang disediakan adalah penting; menyesuaikan diri seperti yang diperlukan untuk persekitaran bukan Homestead.)

2. Pemasangan Vagrant dan Sulu:

    boot VM dan SSH dalam:
  • <code class="language-bash">vagrant up; vagrant ssh</code>
  • tambah
  • ke fail hos anda. test.app /etc/hosts Pasang sulu:
  • <code class="language-bash">cd Code
    git clone https://github.com/sulu-io/sulu-standard sulu; cd sulu
    git checkout master
    composer install</code>
    (alamat konflik versi PHP yang berpotensi; naik taraf jika perlu menggunakan

    .) sudo apt-get upgrade php7.0-fpm

    Konfigurasi Sulu (butiran pangkalan data diperlukan):
  • <code class="language-bash">cp app/Resources/webspaces/sulu.io.xml.dist app/Resources/webspaces/sulu.io.xml
    cp app/Resources/pages/default.xml.dist app/Resources/pages/default.xml
    cp app/Resources/pages/overview.xml.dist app/Resources/pages/overview.xml
    cp app/Resources/snippets/default.xml.dist app/Resources/snippets/default.xml
    rm -rf app/cache/*
    rm -rf app/logs/*</code>
    Run Build Command (Persekitaran Pembangunan):
  • <code class="language-bash">app/console sulu:build dev</code>
    Menjana aset:
  • <code class="language-bash">app/console assetic:dump</code>
    membolehkan mod dev dalam
  • dan
  • (menukar web/admin.php ke web/website.php). SYMFONY_ENV dev

Symfony on Vagrant Performance Hacks - SuluCMS Case Study 3. Hacks Pengoptimuman Prestasi:

  • pengoptimuman log dan cache: Ubah suai app/AbstractKernel.php 's getCacheDir dan getLogDir kaedah untuk menggunakan /dev/shm untuk persekitaran dev/ujian. Ini bergerak log dan cache ke penyimpanan VM-Local.
  • Direktori Vendor Move: Pindahkan direktori vendor ke laluan vm-tempatan (mis., /home/vagrant/vendors/sulu-test.app). Ini meningkatkan prestasi dengan ketara dengan mengelakkan akses sistem fail yang dikongsi. (langkah terperinci disediakan dalam artikel asal untuk pelarasan manual.) Gunakan skrip yang disediakan ~/Code/bin/sulu/vendorfix.sh atau ikuti langkah -langkah manual. Kemas kini IDE anda termasuk jalan dengan sewajarnya.
  • Dayakan APC Caching: Uncomment APC Autoloader Caching In web/website.php dan web/admin.php.
  • Pengoptimuman tambahan: Meningkatkan realpath_cache_size dan realpath_cache_ttl dalam /etc/php/7.0/fpm/php.ini. Pertimbangkan untuk memasang pelanjutan Twig C dan melumpuhkan Xdebug (). sudo phpdismod xdebug; sudo service php7.0-fpm restart

Symfony on Vagrant Performance Hacks - SuluCMS Case Study

4. Penyelesaian masalah:

menangani isu -isu biasa seperti cache basi, lokasi kelas yang tidak betul (gunakan

,

, app/console cache:clear), dan APC cache busting (). Mengoptimumkan untuk menyahpepijat seperti yang diperlukan. rm -rf app/cache/* composer update apc_clear_cache() Kesimpulan:

Pengoptimuman ini secara dramatik meningkatkan prestasi Sulu pada vagrant. Teknik, terutamanya penempatan semula direktori vendor dan pengoptimuman log/cache, secara meluas digunakan untuk mana -mana projek Symfony. Ingatlah untuk menyesuaikan laluan dan konfigurasi ke persediaan khusus anda. Bahagian Soalan Lazim menyediakan konteks dan jawapan selanjutnya soalan umum mengenai prestasi Symfony, Sulu, dan Vagrant.

Atas ialah kandungan terperinci Symfony on Vagrant Prestasi Hacks - Kajian Kes Sulucms. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn