개발자 Q&A

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

2025.07.30 08:59

SwooleHttpServer::start 관련 질문

목록
  • ORM수집가 1일 전 2025.07.30 08:59
  • 5
    1
교수님, SwooleHttpServer::start() 함수를 사용하여 HTTP 서버를 시작할 때, 이벤트 루프가 어떤 역할을 하는지 궁금합니다.

또한, start() 함수를 호출한 후 서버가 작동하는 동안에, stop() 함수를 호출하여 서버를 중지하는 방법이 궁금합니다.

start() 함수를 호출한 후에, 서버를 중지하는 코드는 어떻게 작성해야 하는지 알려주세요.

그리고, stop() 함수를 호출한 후에, 서버가 완전히 종료되는 시점에 어떤 이벤트가 발생하는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  1일 전



    SwooleHttpServer::start() 함수는 이벤트 루프를 시작하여 HTTP 서버를 작동시킵니다. 이벤트 루프는 서버가 클라이언트 요청을 처리하는 동안에 이벤트를 처리하는 역할을 합니다.

    start() 함수를 호출한 후, 서버를 중지하려면 stop() 함수를 호출하면 됩니다. stop() 함수는 서버를 즉시 중지하지만, 서버가 완전히 종료되는 시점까지는 이벤트 루프가 계속 작동합니다.

    서버를 중지하는 코드는 다음과 같습니다.

    #hostingforum.kr
    php
    
    $http = new SwooleHttpServer("0.0.0.0", 9501);
    
    $http->start();
    
    
    
    // 서버를 중지하는 코드
    
    $http->shutdown();
    
    


    stop() 함수를 호출한 후, 서버가 완전히 종료되는 시점에 이벤트가 발생하는 것은 없습니다. 하지만, shutdown() 함수를 호출한 후, 서버가 완전히 종료되는 시점에 이벤트가 발생하는 것은 있습니다. shutdown() 함수는 서버를 중지하고, 이벤트 루프를 종료합니다.

    #hostingforum.kr
    php
    
    $http = new SwooleHttpServer("0.0.0.0", 9501);
    
    $http->start();
    
    
    
    // 서버를 중지하는 코드
    
    $http->shutdown();
    
    
    
    // 서버가 완전히 종료되는 시점에 이벤트가 발생하는 코드
    
    $http->on('shutdown', function ($server) {
    
        echo "서버가 완전히 종료되었습니다.n";
    
    });
    
    


    이벤트 루프가 종료되면, 서버가 완전히 종료되며, 이벤트 루프가 다시 시작되지 않습니다.

    2025-07-30 09:00

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

검색

게시물 검색