


Introduction à l'installation de PHP7.0 dans un environnement Linux
Comparaison entre PHP7 et HHVM
Les performances de PHP7 dans des scénarios réels sont en effet équivalentes à celles de HHVM, et dépassent même HHVM dans certains scénarios. Le fonctionnement et la maintenance de HHVM sont complexes et il s'agit d'un modèle multithread. Cela signifie que si un thread provoque un crash, l'ensemble du service se bloquera et ne redémarrera pas automatiquement. De plus, il utilise JIT, ce qui signifie qu'il doit être réchauffé après le redémarrage. Sans préchauffage, les performances seront pires. De plus, le modèle multithread est difficile à déboguer, ce qui est très inadapté aux services Web qui recherchent la stabilité.
Pour les versions antérieures à Nginx et PHP7.0, merci de vous référer à cet article : Environnement Linux Installation et débogage de Nginx et installation de PHP
La version officielle de PHP7.0 a été publiée vers novembre 2015, et est actuellement la version PHP7.0.2, j'ai commencé à suivre la première version bêta de php7 en août 2015, et maintenant la version officielle est publiée.
Version Linux : CentOS 6.6 64 bits
Version Nginx : nginx1.8.0
Version php : php-7.0.2
Recommandé (Gratuit) : PHP7
Télécharger
wget http://php.net/get/php-7.0.2.tar.gz /from/a/mirror
Il est recommandé de lire le fichier d'aide à l'installation avant l'installation INSTALLER
Décompresser et installer
tar zxvf php-7.0 .2.tar .gz
cd php-7.0.2
Vérifiez d'abord l'aide à l'installation
./configure --help
./configure --prefix=/usr/local/php
–with-curl
–with-freetype-dir
–with -gd
–with-gettext
–with-iconv-dir
–with-kerberos
–with-libdir=lib64
–with-libxml-dir
–avec-mysqli
–avec-openssl
–avec-pcre-regex
–avec-pdo-mysql
–avec-pdo-sqlite
–avec-pear
– avec-png-dir
–avec-xmlrpc
–avec-xsl
–avec-zlib
–enable-fpm
–enable-bcmath
–enable-libxml
–enable-inline-optimisation
–enable-gd-native-ttf
–enable-mbregex
–enable-mbstring
–enable-opcache
–enable-pcntl
–enable -shmop
–enable-soap
–enable-sockets
–enable-sysvsem
–enable-xml
–enable-zip
Si la configuration est faux, vous devez installer les modules requis, installer les bibliothèques dépendantes directement avec yum
yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel mysql pcre-devel
Remarque : Il existe plusieurs configurations qui ne peuvent pas être configurées lors de l'installation de php7beta3. Vous devez le miam. Ce n'est plus le cas avec php-7.0.2.
yum -y install curl-devel
yum -y install libxslt-devel
Compiler et installer
make && make install
Fichier de configuration
cp php.ini-development /usr/local/ php /lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www. conf
cp -R ./sapi/fpm/php-fpm /etc/init.d/php-fpm
Il est à noter que www en php7 Le fichier de configuration .conf configure le numéro de port et d'autres informations de phpfpm Si vous modifiez le numéro de port 9000 par défaut, vous devez le changer ici, puis modifier la configuration nginx
Démarrer
/etc/init.d /php-fpm
Afficher phpinfo()
Comparaison des analyses de performances php7 et php5
[root@localhost www5.4.44]# time /usr/local/php5.4.44/bin/php search_by_key.php
utilisateur 0m0.300s
sys 0m0.050s
[root@localhost www]# time /usr/local/php/bin/php search_by_key.php
réel 0m0.361s
utilisateur 0m0.304s
sys 0m0.057s
[root@localhost www7]# time /usr/local/php7/bin/ php search_by_key.php
real 0m0.114s
user 0m0.097s
sys 0m0.017s
Adresse du site officiel : http://php.net/opcache
Utilisez les paramètres recommandés suivants pour obtenir de meilleures performances :
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
Vous pouvez également désactiver opcache.save_comments et activer opcache.enable_file_override. Il convient de rappeler que la configuration ci-dessus doit être rigoureusement testée avant d'être utilisée dans un environnement de production. En raison d'un problème connu avec la configuration ci-dessus, cela entraînera des exceptions dans certains frameworks et applications, en particulier lorsque des documents utilisent des annotations de commentaires.
vim /usr/local/php7/etc/php.ini
Rejoindre
zend_extension=/usr/local/php7/lib/php /extensions/no-debug-non-zts-20141001/opcache.so
restart
killall php-fpm
/etc /init.d/php-fpm
Code de test d'état Opcache (https://gist.github.com/ck-on/4959032) Donner une démo :
<?php /* OCP - Opcache Control Panel (aka Zend Optimizer+ Control Panel for PHP) Author: _ck_ (with contributions by GK, stasilok) Version: 0.1.6 Free for any kind of use or modification, I am not responsible for anything, please share your improvements * revision history 0.1.6 2013-04-12 moved meta to footer so graphs can be higher and reduce clutter 0.1.5 2013-04-12 added graphs to visualize cache state, please report any browser/style bugs 0.1.4 2013-04-09 added "recheck" to update files when using large revalidate_freq (or validate_timestamps=Off) 0.1.3 2013-03-30 show host and php version, can bookmark with hashtag ie. #statistics - needs new layout asap 0.1.2 2013-03-25 show optimization levels, number formatting, support for start_time in 7.0.2 0.1.1 2013-03-18 today Zend completely renamed Optimizer+ to OPcache, adjusted OCP to keep working 0.1.0 2013-03-17 added group/sort indicators, replaced "accelerator_" functions with "opcache_" 0.0.6 2013-03-16 transition support as Zend renames product and functions for PHP 5.5 (stasilok) 0.0.5 2013-03-10 added refresh button (GK) 0.0.4 2013-02-18 added file grouping and sorting (click on headers) - code needs cleanup but gets the job done 0.0.2 2013-02-14 first public release * known problems/limitations: Unlike APC, the Zend OPcache API - cannot determine when a file was put into the cache - cannot change settings on the fly - cannot protect opcache functions by restricting execution to only specific scripts/paths * todo: Extract variables for prefered ordering and better layout instead of just dumping into tables File list filter */ // ini_set('display_errors',1); error_reporting(-1); if ( count(get_included_files())>1 || php_sapi_name()=='cli' || empty($_SERVER['REMOTE_ADDR']) ) { die; } // weak block against indirect access $time=time(); define('CACHEPREFIX',function_exists('opcache_reset')?'opcache_':(function_exists('accelerator_reset')?'accelerator_':'')); if ( !empty($_GET['RESET']) ) { if ( function_exists(CACHEPREFIX.'reset') ) { call_user_func(CACHEPREFIX.'reset'); } header( 'Location: '.str_replace('?'.$_SERVER['QUERY_STRING'],'',$_SERVER['REQUEST_URI']) ); exit; } if ( !empty($_GET['RECHECK']) ) { if ( function_exists(CACHEPREFIX.'invalidate') ) { $recheck=trim($_GET['RECHECK']); $files=call_user_func(CACHEPREFIX.'get_status'); if (!empty($files['scripts'])) { foreach ($files['scripts'] as $file=>$value) { if ( $recheck==='1' || strpos($file,$recheck)===0 ) call_user_func(CACHEPREFIX.'invalidate',$file); } } header( 'Location: '.str_replace('?'.$_SERVER['QUERY_STRING'],'',$_SERVER['REQUEST_URI']) ); } else { echo 'Sorry, this feature requires Zend Opcache newer than April 8th 2013'; } exit; } ?>nbsp;html>
<p> </p><h1 id="a-Opcache-Control-Panel-a"><a>Opcache Control Panel</a></h1> <p> <a>Details</a> <a>Files</a> <a>Reset</a> <?php if ( function_exists(CACHEPREFIX.'invalidate') ) { ?> <a>Recheck</a> <?php } ?> <a>Refresh</a> </p> <?php if ( !function_exists(CACHEPREFIX.'get_status') ) { echo '<h2>Opcache not detected?'; die; } if ( !empty($_GET['FILES']) ) { echo '<h2 id="files-cached">files cached</h2>'; files_display(); echo '
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Utilisation de Python dans Linux Terminal ...

Configurez la tâche de synchronisation APScheduler en tant que service sur la plate-forme MacOS, si vous souhaitez configurer la tâche de synchronisation APScheduler en tant que service, similaire à Ngin ...

Le multithreading dans la langue peut considérablement améliorer l'efficacité du programme. Il existe quatre façons principales d'implémenter le multithreading dans le langage C: créer des processus indépendants: créer plusieurs processus en cours d'exécution indépendante, chaque processus a son propre espace mémoire. Pseudo-Multithreading: Créez plusieurs flux d'exécution dans un processus qui partagent le même espace mémoire et exécutent alternativement. Bibliothèque multi-thread: Utilisez des bibliothèques multi-threades telles que PTHEADS pour créer et gérer des threads, en fournissant des fonctions de fonctionnement de thread riches. Coroutine: une implémentation multi-thread légère qui divise les tâches en petites sous-tâches et les exécute tour à tour.

Pour ouvrir un fichier web.xml, vous pouvez utiliser les méthodes suivantes: Utilisez un éditeur de texte (tel que le bloc-notes ou TextEdit) pour modifier les commandes à l'aide d'un environnement de développement intégré (tel qu'Eclipse ou NetBeans) (Windows: Notepad web.xml; Mac / Linux: Open -A TextEdit web.xml)

En ce qui concerne le problème de la suppression de l'interpréteur Python qui est livré avec des systèmes Linux, de nombreuses distributions Linux préinstalleront l'interpréteur Python lors de l'installation, et il n'utilise pas le gestionnaire de packages ...

Linux est mieux utilisé comme gestion de serveurs, systèmes intégrés et environnements de bureau. 1) Dans la gestion des serveurs, Linux est utilisé pour héberger des sites Web, des bases de données et des applications, assurant la stabilité et la fiabilité. 2) Dans les systèmes intégrés, Linux est largement utilisé dans les systèmes électroniques intelligents et automobiles en raison de sa flexibilité et de sa stabilité. 3) Dans l'environnement de bureau, Linux fournit des applications riches et des performances efficaces.

Debianlinux est connu pour sa stabilité et sa sécurité et est largement utilisé dans les environnements de serveur, de développement et de bureau. Bien qu'il y ait actuellement un manque d'instructions officielles sur la compatibilité directe avec Debian et Hadoop, cet article vous guidera sur la façon de déployer Hadoop sur votre système Debian. Exigences du système Debian: Avant de commencer la configuration de Hadoop, assurez-vous que votre système Debian répond aux exigences de fonctionnement minimales de Hadoop, qui comprend l'installation de l'environnement d'exécution Java (JRE) nécessaire et des packages Hadoop. Étapes de déploiement de Hadoop: Télécharger et unzip Hadoop: Téléchargez la version Hadoop dont vous avez besoin sur le site officiel d'Apachehadoop et résolvez-le

"Debianstrings" n'est pas un terme standard, et sa signification spécifique n'est pas encore claire. Cet article ne peut pas commenter directement la compatibilité de son navigateur. Cependant, si "DebianStrings" fait référence à une application Web exécutée sur un système Debian, sa compatibilité du navigateur dépend de l'architecture technique de l'application elle-même. La plupart des applications Web modernes se sont engagées à compatibilité entre les navigateurs. Cela repose sur les normes Web suivantes et l'utilisation de technologies frontales bien compatibles (telles que HTML, CSS, JavaScript) et les technologies back-end (telles que PHP, Python, Node.js, etc.). Pour s'assurer que l'application est compatible avec plusieurs navigateurs, les développeurs doivent souvent effectuer des tests croisés et utiliser la réactivité
