ホームページ > バックエンド開発 > PHPの問題 > PHP 用の Libevent 拡張機能をインストールする方法

PHP 用の Libevent 拡張機能をインストールする方法

醉折花枝作酒筹
リリース: 2023-03-11 06:24:01
転載
1971 人が閲覧しました

libevent は、Windows、Linux、freebsd、その他のプラットフォームに適したイベント トリガー ネットワーク ライブラリであり、内部で select、pol、epoll、kqueue などのシステム コールやその他のシステム コールを使用してイベント メカニズムを管理します。エディターを使用して、Libevent 拡張機能をインストールする方法を学びましょう。

PHP 用の Libevent 拡張機能をインストールする方法

1. libevent の概要

libevent は、Windows、Linux、freebsd、その他のプラットフォームに適したイベントトリガー型のネットワーク ライブラリです。 poll、epoll、kqueue などのシステム コールは、イベント メカニズムを管理します。 Libevent はクロスプラットフォームであり、並外れたパフォーマンスを発揮します。これは、nodejs と同様にイベント駆動型です。公式 Web サイト: http://libevent.org/

最新の安定バージョン

https://github.com/downloads/libevent/libevent/libevent - 2.0.16-stable.tar.gz

メイン モジュール:

イベント処理フレームワーク

イベント エンジン モジュール

バッファ管理モジュール

信号処理モジュール

php 自体はマルチスレッドをサポートしておらず、php は同時実行メカニズムをうまく実装できません。 Pecl が提供する pcntl (プロセス制御)、libevent 拡張機能、ソケット パッケージ、ストリーム システム機能により、PHP を使用して高性能、高同時実行性のネットワーク アプリケーションを簡単に開発できます。

簡単なアプリケーション例: Pcntl fork n ワーカー。マスタープロセスがリクエストを取得すると、処理情報がワーカープログラムに送信され、ワー​​カーは処理後にそれをクライアントに送り返します。マスタープロセスは同時実行量に応じてワーカーの数、つまりnのサイズを設定し、ワーカーのデータを監視し、不足した場合に追加のプロセスを開始できます。 nginxの原理と同じです。

添付ファイル: Php ネットワーク プログラミング フレームワーク

http://code.google.com/p/swoole/downloads/list

2. libevent を学ぶ必要がある理由

http サーバーは libevent の古典的なアプリケーションと言えます。 http の標準的な書き方は libevent にありますが、ノンブロッキング http サーバーはソケット処理と http プロトコル処理を組み合わせたものです。

libevent を学習すると、プログラミング スキルの向上に役立ちます。ネットワーク プログラミングに加えて、Libevent のコードには、情報の隠蔽、関数ポインタ、C 言語のポリモーフィズムなど、多くの便利な設計テクニックと基本的なデータ構造が含まれています。リスト、ヒープなどはすべて、プログラミング スキルの向上に役立ちます [1]。

3 種類のリクエスト処理:

  • 新しいプロセスをフォークする接続入力

  • 接続入力 pthread_create

  • 接続入力はイベントベースの配列をスローします;メインプロセスはノンブロッキングなことを行います;

3. Php libevent 拡張モジュールのインストール

Curl –O https://github.com/downloads/libevent/libevent/libevent-2.0.16-stable.tar.gz

Tar –zxvf libevent-2.0.16-stable.tar.gz
Cd libevent-2.0.16-stable
/usr/local/php/bin/phpize
./configure
make
make install
vi /usr/local/php/etc/php.ini
extension_dir=””;
extension=libevent.so
php –m | grep lib
ログイン後にコピー

インストール成功

推奨学習:php ビデオ チュートリアル

以上がPHP 用の Libevent 拡張機能をインストールする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:imooc.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート