라이브러리
[PHP] SwooleServer::listen - 지정된 IP, 포트, 소켓 유형을 수신합니다.
SwooleServer::listen
SwooleServer::listen은 Swoole의 서버를 시작하고, 특정 포트에서 소켓을 열어준다. 이 메서드는 SwooleServer의 생성자에서 호출되어야 한다.
Syntax
#hostingforum.kr
php
public function listen($host, $port, $mode = SWOOLE_SOCK_TCP, $backlog = 128, $settings = array())
Parameters
- `$host`: 서버가 소켓을 열어줄 호스트 이름 또는 IP 주소. 기본값은 '0.0.0.0' (모든 IP 주소).
- `$port`: 서버가 소켓을 열어줄 포트 번호.
- `$mode`: 소켓 타입. 기본값은 SWOOLE_SOCK_TCP (TCP 소켓).
- `$backlog`: 소켓의 백로그 수. 기본값은 128.
- `$settings`: 서버의 설정. 기본값은 빈 배열.
예제
#hostingforum.kr
php
use SwooleServer;
$server = new Server('127.0.0.1', 9501, SWOOLE_SOCK_TCP);
$server->on('connect', function ($server, $fd) {
echo "Client $fd connected
";
});
$server->on('receive', function ($server, $fd, $fromId, $data) {
echo "Client $fd received message: $data
";
$server->send($fd, "Hello, client!");
});
$server->on('close', function ($server, $fd) {
echo "Client $fd closed
";
});
$server->start();
이 예제는 TCP 소켓을 사용하여 서버를 시작하고, 클라이언트가 연결되면 연결이 수립되었습니다. 클라이언트가 메시지를 받으면 서버가 메시지를 받았습니다. 클라이언트가 연결을 끊으면 연결이 끊겼습니다.
설정 옵션
SwooleServer::listen에서 사용할 수 있는 설정 옵션은 다음과 같습니다.
- `worker_num`: 워커 프로세스의 수.
- `task_worker_num`: 태스크 워커 프로세스의 수.
- `max_request`: 워커 프로세스가 처리할 수 있는 요청의 수.
- `max_conn`: 소켓의 최대 연결 수.
- `max_socks`: 소켓의 최대 소켓 수.
- `open_eof_check`: EOF 체크를 활성화할지 여부.
- `open_eof_split`: EOF 분리기를 활성화할지 여부.
- `package_eof`: 패킷의 EOF 문자열.
- `package_max_length`: 패킷의 최대 길이.
- `package_body_length_detection`: 패킷의 바디 길이 감지를 활성화할지 여부.
- `package_body_length`: 패킷의 바디 길이.
이 설정 옵션은 서버의 성능과 안정성을 향상시키기 위해 사용할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.