ホームページ PHPフレームワーク Workerman thinkphp でワーカーマンを使用する方法

thinkphp でワーカーマンを使用する方法

Nov 30, 2019 pm 04:53 PM
thinkphp workerman

次のコラム workerman 入門チュートリアル では、workerman と thinkphp を組み合わせる方法を紹介しますので、少しでもお役に立てれば幸いです。

thinkphp でワーカーマンを使用する方法

workerman を実行するには、pcntl とイベントまたは libevent をインストールする必要があります

pcntl のインストール方法:

With例として php-5.5 .20 を使用します。実際の状況は、インストールした PHP ディレクトリに基づいています。

1. PHP ソース コードを見つけて、php-5.5.20/ext/pcntl/ ディレクトリに入ります。 cd php- 5.5.20/ext/pcntl/

2.locate phpize を実行して phpize ディレクトリを見つけ、/usr/local/php-5.5.20/bin/phpize

3. を実行します。 /configure --with-php-config=PHP 設定ファイルのパス 例: ./configure --with-php-config=/usr/local/php-5.5.20/bin/php-config

4. コンパイルしてインストールします make && make install If/ext /pcntl/modules/pcntl.so が生成され、正常にコンパイルされます

5. php echo "extension=pcntl.so" によって読み込まれた PHP.INI に拡張機能を追加します。 >> /etc/php.ini (現在使用されている php.ini 設定パスを表示するには、コマンド php --ini を入力します)

6. nginx を再起動します nginx -s reload

7サービスを表示 ps -aux | grep pcntl

バージョン 5.3 の場合は、コマンドを直接入力してインストールできます:

yum install php-cli php-process git gcc php-devel php-pear libevent-devel php-pdo php-mysql_pdo -y
ログイン後にコピー

イベントのインストール方法:

1. yum install libevent-devel -y

2. pecl install event

ヒント: libevent OpenSSL サポートを含める [yes]: no と入力して Enter キーを押します。それ以外の場合は Enter キーを押してください。

3. echo extension=event.so > /etc/php.ini

libevent インストール方法:

1. yum install libevent- devel

2. pecl install channel://pecl .php.net/libevent-0.1.0 // libevent のインストールを要求する [autodetect]: Enter を押します

3. PHP ディレクトリ lib を確認します。 /php/extensions/no-debug-non-zts-20121212 libevent.so がディレクトリ

に生成されるかどうか 4. コマンド php -v を入力して、インストールされている拡張機能を表示します

#Workerman は Thinkphp に統合されています: (推奨: workerman チュートリアル )

1. ダウンロードした workman ディレクトリを project\ThinkPHP\Library ディレクトリに配置します

2 \Lib\Constants.php を除くクラス ファイルをworkerman ディレクトリに配置します。 ファイル名を *.class.php

に変更します。 3. 次のコマンドを使用して、プロジェクトのルート ディレクトリに新しいファイル worker.php ファイルを作成します。 content:

<?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(&#39;BIND_MODULE&#39;, &#39;Worker&#39;);
define(&#39;BIND_CONTROLLER&#39;, &#39;Worker&#39;);
define(&#39;BIND_ACTION&#39;, &#39;Start&#39;);
//define(&#39;APP_MODE&#39;,&#39;cli&#39;);
//ThinkPHP的其他设定
define( &#39;APP_PATH&#39;, dirname(__FILE__).&#39;/Application/&#39; );
require dirname( __FILE__).&#39;/ThinkPHP/ThinkPHP.php&#39;;
?>
ログイン後にコピー

4. Home モジュールのコピーをコピーし、その名前を Worker

5 に変更します。次の内容を含む新しい Worker コントローラーを Worker モジュールに作成します。

6. Linux システムに入り、ポート 8989

<?php
namespace Worker\Controller;
use Think\Controller;
use Workerman\Worker;
class WorkerController extends Controller{
    public function Start() {
        $worker = new Worker(&#39;text://0.0.0.0:8989&#39;); //实例化Worker,并设置协议、IP和端口(地址和端口自定义)
        $worker->count = 4;
        $worker->onMessage = array($this, &#39;onMessage&#39;);
        //worker的其它回调方法可以参考onMessage
        Worker::runAll();
    }
    public function onMessage($connection, $data)
    {
        $connection->send(&#39;hello&#39;);
    }
    
}
 ?>
ログイン後にコピー

7. プロジェクト ルートに入る ディレクトリに起動コマンドを入力します:

iptables -I INPUT -p tcp --dport 8989 -j ACCEPT
ログイン後にコピー

に [OK] が表示され、起動が成功したことを示します

8. 新しいサーバー リンクを作成し、telnet 127.0.0.1 8989 を入力してテストします。

Workerman が MySQL にアクセスします :


1. インストールします。 pdo および pdo_mysql およびその他の関連拡張機能

#2. ワーカー モジュールの Conf ディレクトリの config.php にデータベース関連の設定を追加します

3. サーバー アドレスには localhost を使用せず、localhost を使用します。 IP127.0.0.1

4. データベースを設定した後、Thinkphp の Db メソッド


# を直接使用できます。

以上がthinkphp でワーカーマンを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

thinkphpプロジェクトの実行方法 thinkphpプロジェクトの実行方法 Apr 09, 2024 pm 05:33 PM

ThinkPHP プロジェクトを実行するには、Composer をインストールし、Composer を使用してプロジェクトを作成し、プロジェクト ディレクトリに入り、php bin/consoleserve を実行し、http://localhost:8000 にアクセスしてようこそページを表示する必要があります。

thinkphp にはいくつかのバージョンがあります thinkphp にはいくつかのバージョンがあります Apr 09, 2024 pm 06:09 PM

ThinkPHP には、さまざまな PHP バージョン向けに設計された複数のバージョンがあります。メジャー バージョンには 3.2、5.0、5.1、および 6.0 が含まれますが、マイナー バージョンはバグを修正し、新機能を提供するために使用されます。最新の安定バージョンは ThinkPHP 6.0.16 です。バージョンを選択するときは、PHP バージョン、機能要件、コミュニティ サポートを考慮してください。最高のパフォーマンスとサポートを得るには、最新の安定バージョンを使用することをお勧めします。

Workerman ドキュメントにファイルのアップロードとダウンロードを実装する Workerman ドキュメントにファイルのアップロードとダウンロードを実装する Nov 08, 2023 pm 06:02 PM

Workerman ドキュメントでファイルのアップロードとダウンロードを実装するには、特定のコード サンプルが必要です はじめに: Workerman は、シンプル、効率的、使いやすい高性能 PHP 非同期ネットワーク通信フレームワークです。実際の開発では、ファイルのアップロードとダウンロードが一般的な機能要件となりますが、この記事では、Workerman フレームワークを使用してファイルのアップロードとダウンロードを実装する方法と、具体的なコード例を紹介します。 1. ファイル アップロード: ファイル アップロードとは、ローカル コンピューター上のファイルをサーバーに転送する操作を指します。以下が使用されます

thinkphpの実行方法 thinkphpの実行方法 Apr 09, 2024 pm 05:39 PM

ThinkPHP フレームワークをローカルで実行する手順: ThinkPHP フレームワークをローカル ディレクトリにダウンロードして解凍します。 ThinkPHP ルート ディレクトリを指す仮想ホスト (オプション) を作成します。データベース接続パラメータを構成します。 Webサーバーを起動します。 ThinkPHP アプリケーションを初期化します。 ThinkPHP アプリケーションの URL にアクセスして実行します。

laravelとthinkphpではどちらが優れていますか? laravelとthinkphpではどちらが優れていますか? Apr 09, 2024 pm 03:18 PM

Laravel フレームワークと ThinkPHP フレームワークのパフォーマンスの比較: ThinkPHP は、最適化とキャッシュに重点を置いて、一般に Laravel よりもパフォーマンスが優れています。 Laravel は優れたパフォーマンスを発揮しますが、複雑なアプリケーションの場合は、ThinkPHP の方が適している可能性があります。

スウールとワーカーマンはどちらが良いですか? スウールとワーカーマンはどちらが良いですか? Apr 09, 2024 pm 07:00 PM

Swoole と Workerman はどちらも高性能の PHP サーバー フレームワークです。 Swoole は、非同期処理、優れたパフォーマンス、スケーラビリティで知られており、多数の同時リクエストと高スループットを処理する必要があるプロジェクトに適しています。 Workerman は、使いやすさや同時実行量が少ないプロジェクトに適した直感的な API を備え、非同期モードと同期モードの両方の柔軟性を提供します。

Workerman ドキュメントの基本的な使用方法を実装する方法 Workerman ドキュメントの基本的な使用方法を実装する方法 Nov 08, 2023 am 11:46 AM

Workerman ドキュメントの基本的な使用方法の実装方法の紹介: Workerman は、開発者が同時実行性の高いネットワーク アプリケーションを簡単に構築できるようにする高性能 PHP 開発フレームワークです。この記事では、インストールと構成、サービスとリスニング ポートの作成、クライアント リクエストの処理など、Workerman の基本的な使用方法を紹介します。そして、対応するコード例を示します。 1. Workerman のインストールと構成 コマンド ラインに次のコマンドを入力して、Workerman をインストールします。

開発に関する提案: ThinkPHP フレームワークを使用して非同期タスクを実装する方法 開発に関する提案: ThinkPHP フレームワークを使用して非同期タスクを実装する方法 Nov 22, 2023 pm 12:01 PM

「開発に関する提案: ThinkPHP フレームワークを使用して非同期タスクを実装する方法」 インターネット技術の急速な発展に伴い、Web アプリケーションには、多数の同時リクエストと複雑なビジネス ロジックを処理するための要件が​​ますます高まっています。システムのパフォーマンスとユーザー エクスペリエンスを向上させるために、開発者は多くの場合、電子メールの送信、ファイルのアップロードの処理、レポートの生成など、時間のかかる操作を実行するために非同期タスクの使用を検討します。 PHP の分野では、人気のある開発フレームワークとして ThinkPHP フレームワークが、非同期タスクを実装するための便利な方法をいくつか提供しています。

See all articles