Rumah >pembangunan bahagian belakang >tutorial php >Symfony on Vagrant Prestasi Hacks - Kajian Kes Sulucms
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:
<code class="language-bash">git clone https://github.com/swader/homestead_improved hi_sulu cd hi_sulu; bin/folderfix.sh</code>
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:
<code class="language-bash">vagrant up; vagrant ssh</code>
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
<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
web/admin.php
ke web/website.php
). SYMFONY_ENV
dev
3. Hacks Pengoptimuman Prestasi:
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. 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. web/website.php
dan web/admin.php
. 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
menangani isu -isu biasa seperti cache basi, lokasi kelas yang tidak betul (gunakan
,, app/console cache:clear
), dan APC cache busting (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!