Workerman是一個純PHP編寫的高性能的Socket服務器框架,可以用于開發長連接應用,如Websocket、實時聊天室等。以下是安裝和配置Workerman的步驟:
使用Composer安裝Workerman
在命令行中運行以下命令來全局安裝Composer(如果尚未安裝):
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
然后,使用Composer安裝Workerman:
composer require workerman/workerman
創建一個新的PHP文件,例如workerman.php
。
編輯workerman.php
文件,添加以下代碼:
<?php
use Workerman\Worker;
// 自動加載Composer依賴
require_once __DIR__ . '/vendor/autoload.php';
// 創建一個Worker監聽所有可用的網絡接口
$worker = new Worker('tcp://0.0.0.0:8080');
// 設置Worker進程數,默認為系統CPU核數
$worker->count = 4;
// 設置Worker進程名稱
$worker->name = 'WebsocketServer';
// 設置接收數據的處理類
$worker->count = 4;
// 設置接收數據的處理類
$worker->onMessage = function ($connection, $data) {
echo "Received message: {$data}\n";
// 可以在這里處理接收到的數據,例如回復客戶端
$connection->send("Server received: {$data}");
};
// 設置Worker進程關閉時的處理函數
$worker->onClose = function ($connection) {
echo "Connection closed: {$connection->id}\n";
};
// 運行Worker進程
Worker::runAll();
運行Workerman服務器:
在命令行中,進入到包含workerman.php
文件的目錄,然后運行以下命令:
php workerman.php start
這將啟動一個監聽在端口8080上的Workerman服務器。
你可以使用任何支持WebSocket的客戶端來測試你的Workerman服務器。例如,你可以使用基于瀏覽器的JavaScript WebSocket API或者使用專門的WebSocket客戶端工具,如Postman或者簡單的Python腳本。
$worker->count
來設置Worker進程的數量。以上就是安裝和配置Workerman的基本步驟。如果你遇到任何問題,可以查看Workerman的官方文檔或者在社區尋求幫助。