Ho un progetto ~ 4 anni, ho iniziato con 5.3 e Symfony 2.0, migrato su 5.5 e S2.3. Al momento ho migrato a S2.8 e voglio migrare a php 7.Symfony 2. Progetto di migrazione su php 7 da php5.5. Problemi di prestazioni
Dato che c'era un mucchio di prestazioni attorno a PHP 7, ero impaziente di testare le mie prestazioni di progetto in dev env.
Quindi benchmark in esecuzione in dev env; il servizio è su host vagabondo con php5-fpm e php7.0-fpm, spegnendone uno e impostandone un altro.
Mi aspetterei che php7 superi le prestazioni di php5, ma fondamentalmente sembra che php7 sia 1.5-2 volte più lento sul mio dev env locale.
Cosa sto sbagliando? O dovrei riscrivere la mia app in qualche modo?
phpinfo: php 7 http://pastebin.com/a6a76vE2 php 5 http://pastebin.com/4GBXNmBB
P.S. Sì, capisco che l'esecuzione di benchmark in ambiente di sviluppo locale non è valida al 100% e pura, ma ho bisogno solo di capire se php7 è più veloce di php5, come si dice.
U1
cosa più divertente è che nerofuoco mostra chiaramente che php 7 è ~ 45% più veloce di php 5. Ma quando sto assediare, che vedo che degrada le prestazioni.
U2
Qui è più o meno la mia configurazione personalizzata per dev ENV. Lo stesso vale per php5.5 e php7:
[Date]
date.timezone = Europe/Tallinn
[PHP]
memory_limit = 512M
expose_php = Off
cgi.fix_pathinfo = 0
post_max_size = 10M
upload_max_filesize = 10M
max_execution_time = 60
realpath_cache_size = 4096k
realpath_cache_ttl = 7200
error_reporting = E_ALL | E_STRICT
log_errors = On
error_log = /var/log/php.errors.log
display_errors = On
display_startup_errors = On
html_errors = On
; xdebug
xdebug.remote_enable = On
xdebug.remote_port = 9001
xdebug.max_nesting_level = 200
xdebug.remote_log = /tmp/xdebug.log
xdebug.remote_connect_back = on
xdebug.idekey = "vagrant"
[opcache]
opcache.enable_cli=0
opcache.save_comments=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=66000
opcache.fast_shutdown=1
opcache.enable=1
opcache.revalidate_freq=5
opcache.validate_timestamps=1
@VaheShadunts, ottimo per te. Qualche suggerimento su cosa guardare? Potrebbero esserci alcune impostazioni opcache, modifiche alla configurazione delle app o memorizzazione nella cache di bootstrap? –
Hai provato a eseguire i test su un'altra macchina o con una configurazione diversa? –
@ A.L Penso che il mio problema sia più legato alla configurazione, che alla macchina. Ma non sono sicuro di cosa cercare. Fondamentalmente la configurazione di php-fpm è la stessa, la configurazione del pool è la stessa. Il codice è lo stesso. Quindi non ho una chiara idea. –