TCPサービス・ラーニングを誓いました

TcpServer.php

<?phpの
/ ** 
 * PhpStormによって作成されます。
 *ユーザー:マック
 *発売日:2019年9月13日
 *時間:午前20時33分
 * / 

クラスtcpserverの
{ 
	constのIP = "0.0.0.0"。
	constのPORT = 9501; 

	公共の$ SERV。


	//创建サーバー对象、监听本机9501端口
	パブリック関数__construct()
	{ 

		の$ this - > SERV =新しいSwoole \サーバー(自己:: IP、自己:: PORT)。

		の$ this - > serv->上( "接続"、[$この、 "のonConnect"]); 
		の$ this - > serv->上( "受信"、[$この、 "onReceive"]); 
		の$ this - > serv->上( "閉じる"、[$この、 "OnCloseの"]);
 
	{ 
		エコー"クライアント接続:." $ fd.PHP_EOL; 
	} 

	/ ** 
	 *受信したクライアント情報トリガー
	 * @paramする$ SERVサーバ情報
	 * @paramする$ FDクライアント特定
	 * @param $ reactor_idスレッドID 
	 * @param $データ受信データ
	 * / 
	パブリック関数onReceive(Servの$、$ FD、reactor_id $、$データ)
	{ 
		エコー"サーバがクライアントを受け取り- " .. $ FD」 -データ"$データ。"スレッドID - 「$ reactor_id.PHP_EOL ;. 
	} 

	/ ** 
	 * @param $のServのサーバ情報
	 * @paramする$ FDクライアント識別子
	 * / 
	パブリック関数OnCloseの(Servのの$、$ FD)
	{ 
		; .PHP_EOL - $ fdの"接続を閉じる" - .. "クライアント"エコー
	} 

	/ ** 
	 * @param $コンフィグ設定を
	 * /
	パブリック関数セット(配列$ CONFIG)
	{
		の$ this - > serv->セット($の設定)。
	} 

	パブリック関数の開始()
	{ 
		の$ this - > serv->開始(); 
	} 
} 

$のTCP =新しいtcpserverの(); 
$ TCP->セット(配列(
	'reactor_num' => 2、//リアクタースレッドNUM 
	'worker_num' => 4、//ワーカープロセスNUM 
	'バックログ' => 128、//リッスンバックログ
	'max_request' => 50、
	'dispatch_mode' => 1))。
$ TCP->スタート();

 CLIモードの実行を入力します。

PHP TcpServer.phpはマシンのポート9501を聞いて開始します

PSの-aft | grepをTcpServer.php

netstatの-tlunp | grepを9501 

成功を表示するには

 

Telnet経由のTCP接続  

マックは、Telnetをインストール醸造します

Linuxの(CentOSの)YUM Telnetをインストール-y 

 

 

 

出口のtelnet 

CTRL +]

次に入力しますか?番号

そして、quitと入力します 

 

おすすめ

転載: www.cnblogs.com/php-linux/p/11517731.html