개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.13 12:49

SwooleHttpServer::on 이벤트 처리에 대한 질문

목록
  • 커밋광 1일 전 2025.05.13 12:49
  • 3
    1
저는 SwooleHttpServer::on 이벤트를 사용하여 HTTP 요청을 처리하고 싶습니다.
하지만, 이벤트 헨들러를 등록하는 부분이 이해가 가지 않습니다.
SwooleHttpServer::on 이벤트 헨들러를 등록할 때, 어떤 형식으로 이벤트 이름을 지정해야 하는지 알려주세요.

예를 들어, 'connect', 'receive', 'close'와 같은 이벤트는 어떻게 지정해야 하는지 알려주세요.
또한, 이벤트 헨들러 함수의 파라미터에 대한 정보도 알려주세요.

    댓글목록

    profile_image
    나우호스팅  1일 전



    SwooleHttpServer::on 이벤트 헨들러를 등록하는 방법은 다음과 같습니다.

    #hostingforum.kr
    php
    
    $serv = new SwooleHttpServer("127.0.0.1", 9501);
    
    
    
    $serv->on('Connect', function ($serv, $fd, $from_id) {
    
        echo "Client: $fd connect.n";
    
    });
    
    
    
    $serv->on('Receive', function ($serv, $fd, $from_id, $data) {
    
        echo "Client: $fd receive data: $datan";
    
    });
    
    
    
    $serv->on('Close', function ($serv, $fd, $from_id) {
    
        echo "Client: $fd close.n";
    
    });
    
    


    위 예제에서 'Connect', 'Receive', 'Close'는 이벤트 이름입니다.

    이벤트 헨들러 함수의 파라미터는 다음과 같습니다.

    - $serv: Swoole\Http\Server 인스턴스
    - $fd: 클라이언트의 파일 디스크립터
    - $from_id: 클라이언트의 ID
    - $data: 클라이언트가 보낸 데이터 (Receive 이벤트에서만 사용)

    이벤트 이름은 다음과 같은 이벤트를 지정할 수 있습니다.

    - Connect: 클라이언트 연결 시 호출
    - Receive: 클라이언트가 데이터를 보낼 때 호출
    - Close: 클라이언트 연결이 종료될 때 호출
    - Request: 클라이언트가 요청을 보낼 때 호출
    - Finish: 클라이언트가 요청을 완료할 때 호출
    - Task: 태스크를 처리할 때 호출
    - FinishTask: 태스크 처리가 완료될 때 호출
    - ManagerStart: 스레드 매니저가 시작될 때 호출
    - ManagerStop: 스레드 매니저가 종료될 때 호출
    - WorkerStart: 워커 스레드가 시작될 때 호출
    - WorkerStop: 워커 스레드가 종료될 때 호출
    - WorkerError: 워커 스레드가 에러를 발생할 때 호출
    - PipeMessage: 파이프 메시지를 보낼 때 호출
    - PipeConnect: 파이프 연결 시 호출
    - PipeClose: 파이프 연결이 종료될 때 호출
    - Timer: 타이머가 호출될 때 호출
    - Tick: 타이머가 호출될 때 호출
    - Beat: 타이머가 호출될 때 호출
    - WorkerExit: 워커 스레드가 종료될 때 호출
    - WorkerStartFile: 워커 스레드가 시작될 때 호출
    - WorkerStopFile: 워커 스레드가 종료될 때 호출
    - WorkerExitFile: 워커 스레드가 종료될 때 호출
    - ProcessStart: 프로세스 스레드가 시작될 때 호출
    - ProcessStop: 프로세스 스레드가 종료될 때 호출
    - ProcessExit: 프로세스 스레드가 종료될 때 호출
    - ProcessError: 프로세스 스레드가 에러를 발생할 때 호출
    - TaskWorkerStart: 태스크 워커 스레드가 시작될 때 호출
    - TaskWorkerStop: 태스크 워커 스레드가 종료될 때 호출
    - TaskWorkerExit: 태스크 워커 스레드가 종료될 때 호출
    - TaskWorkerError: 태스크 워커 스레드가 에러를 발생할 때 호출
    - TaskTimer: 태스크 타이머가 호출될 때 호출
    - TaskTick: 태스크 타이머가 호출될 때 호출
    - TaskBeat: 태스크 타이머가 호출될 때 호출
    - TaskWorkerExitFile: 태스크 워커 스레드가 종료될 때 호출
    - TaskWorkerStartFile: 태스크 워커 스레드가 시작될 때 호출
    - TaskWorkerStopFile: 태스크 워커 스레드가 종료될 때 호출
    - TaskWorkerExitFile: 태스크 워커 스레드가 종료될 때 호출
    - TaskProcessStart: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStop: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExit: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessError: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessErrorFile: 태스크 프로세스 스레드가 에러를 발생할 때 호출
    - TaskProcessStartFile: 태스크 프로세스 스레드가 시작될 때 호출
    - TaskProcessStopFile: 태스크 프로세스 스레드가 종료될 때 호출
    - TaskProcessExitFile: 태스크 프로세스 스

    2025-05-13 12:50

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 19,341건 / 21 페이지

검색

게시물 검색