La colonne suivante du Tutoriel de démarrage de Workerman vous présentera la méthode de combinaison de Workerman avec thinkphp. J'espère qu'elle vous sera utile.
Pour exécuter Workererman, vous devez installer pcntl et event ou libevent
Méthode d'installation de pcntl :
avec php-5.5 .20 est pris comme exemple. La situation réelle est basée sur le répertoire PHP que vous avez installé
1. Recherchez le code source PHP et entrez le répertoire php-5.5.20/ext/pcntl/ cd. php-5.5.20/ext/pcntl/
2. Exécutez Locate phpize pour trouver le répertoire phpize et exécutez /usr/local/php-5.5.20/bin/phpize
3. Exécutez ./configure --with-php-config=Chemin du fichier de configuration PHP Par exemple : ./configure --with-php-config=/usr/local/php-5.5.20/bin/php-config
4. Compilez et installez make && make install if/ext /pcntl/modules/pcntl.so est généré et compilé avec succès
5. Ajoutez l'extension au PHP.INI chargé par php echo "extension=pcntl. so" >> /etc/php.ini (Entrez la commande php --ini pour afficher le chemin de configuration php.ini actuellement utilisé)
6. Redémarrez nginx nginx -s reload
7. Visualiser le service ps -aux | grep pcntl
S'il s'agit de la version 5.3, vous pouvez directement saisir la commande pour installer :
yum install php-cli php-process git gcc php-devel php-pear libevent-devel php-pdo php-mysql_pdo -y
méthode d'installation par événement :
1. yum install libevent-devel -y
2. événement d'installation pecl
Invite : Inclure la prise en charge de libevent OpenSSL [oui] : Entrez non et appuyez sur Entrée, sinon simplement appuyez sur Entrée
3. echo extension=event.so > /etc/php.ini
méthode d'installation de libevent :
1. libevent-devel
2. canal d'installation pecl://pecl .php.net/libevent-0.1.0 //Installation rapide de libevent [autodetect] : appuyez sur Entrée
3. Vérifiez le PHP répertoire lib/php/extensions/no-debug-non-zts-20121212 Si libevent.so est généré sous le répertoire
4. Entrez la commande php -v pour afficher les extensions installées
Workerman intégré à Thinkphp : (recommandé : Tutoriel Workerman)
1 Placez le répertoire Workerman téléchargé dans le répertoire ThinkPHPLibrary du projet
2. les noms de fichiers des fichiers de classe dans le répertoire Workerman sauf LibConstants.php à *.class.php
3. Créez un nouveau fichier Worker.php dans le répertoire racine du projet avec le contenu suivant :
<?php header("Content-type: text/html; charset=utf-8"); // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- // | Copyright (c) 2006-2014 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- // | Author: liu21st <liu21st@gmail.com> // +---------------------------------------------------------------------- // 应用入口文件 define('BIND_MODULE', 'Worker'); define('BIND_CONTROLLER', 'Worker'); define('BIND_ACTION', 'Start'); //define('APP_MODE','cli'); //ThinkPHP的其他设定 define( 'APP_PATH', dirname(__FILE__).'/Application/' ); require dirname( __FILE__).'/ThinkPHP/ThinkPHP.php'; ?>
4. Copiez une copie du module Home et changez son nom en Worker
5. Créez un nouveau contrôleur Worker dans le module Worker avec le contenu suivant :
<?php namespace Worker\Controller; use Think\Controller; use Workerman\Worker; class WorkerController extends Controller{ public function Start() { $worker = new Worker('text://0.0.0.0:8989'); //实例化Worker,并设置协议、IP和端口(地址和端口自定义) $worker->count = 4; $worker->onMessage = array($this, 'onMessage'); //worker的其它回调方法可以参考onMessage Worker::runAll(); } public function onMessage($connection, $data) { $connection->send('hello'); } } ?>
6. Entrez dans le système Linux et ouvrez le port 8989
iptables -I INPUT -p tcp --dport 8989 -j ACCEPT
7. Entrez dans le répertoire racine du projet et entrez la commande de démarrage :
php worker.php start
affiche OK, indiquant un démarrage réussi
8. Créer un nouveau lien de serveur, entrez telnet 127.0.0.1 8989 pour tester
Accès Workerman à MySQL :
1 Installez les extensions associées telles que pdo et pdo_mysql
2. Ajoutez les configurations liées à la base de données à config.php dans le répertoire Conf du module Worker 3. Adresse du serveur N'utilisez pas localhost et utilisez IP127.0.0.1. 4. Après avoir configuré la base de données, vous pouvez directement utiliser la méthode Db de ThinkphpCe 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!