서버 생성하기
서버 생성하기
코드 예제: embedded-server, engine-main, engine-main-yaml
Ktor 애플리케이션을 생성하기 전에, 애플리케이션을 어떻게
할 것인지 고려해야 합니다:독립형 패키지(self-contained package) 형태
이 경우, 네트워크 요청을 처리하는 데 사용되는 애플리케이션
엔진(engine)이 애플리케이션의 일부가 되어야 합니다. 애플리케이션은 엔진 설정, 연결 및 SSL 옵션에 대한 제어권을 갖습니다.네트워크 요청을 처리하는 엔진에 대해 알아봅니다.서블릿(servlet) 형태
이 경우, Ktor 애플리케이션은 애플리케이션 생명주기와 연결 설정을 제어하는 서블릿 컨테이너(Tomcat 또는 Jetty 등) 내부에서 배포될 수 있습니다.
독립형 패키지
Ktor 서버 애플리케이션을 독립형 패키지로 제공하려면 먼저 서버를 생성해야 합니다. 서버 설정에는 서버
embeddedServer함수는 코드에서 서버 파라미터를 설정 하고 애플리케이션을 빠르게 실행할 수 있는 간단한 방법입니다.EngineMain은 서버 설정을 위한 더 많은 유연성을 제공합니다. 파일에 서버 파라미터를 지정 할 수 있으며 애플리케이션을 다시 컴파일하지 않고도 설정을 변경할 수 있습니다. 또한, 명령줄(command line)에서 애플리케이션을 실행하고 해당 명령줄 인수를 전달하여 필요한 서버 파라미터를 재정의(override)할 수 있습니다.
코드를 통한 설정
embeddedServer 함수는
Netty 엔진을 사용하여 서버를 실행하고 8080 포트에서 수신 대기합니다: 전체 예제는 embedded-server 를 참조하세요.
파일을 통한 설정
EngineMain은 선택한 엔진으로 서버를 시작하고 외부
로드할 모듈을 지정하는 것 외에도, 설정 파일에는 포트, 호스트, SSL 설정과 같은 다양한 서버 파라미터를 포함할 수 있습니다. 예를 들어, 아래 설정은 서버 포트를 8080으로 설정합니다.
NOTE
EngineMain.main()으로 서버를 즉시 시작하는 대신, EngineMain.createServer()를 사용하여 서버 인스턴스를 수동으로 생성할 수 있습니다. 자세한 내용은 를 참조하세요. 전체 예제는 engine-main 및 engine-main-yaml 을 참조하세요.
서블릿(Servlet)
Ktor 애플리케이션은 Tomcat 및 Jetty를 포함한 서블릿 컨테이너 내부에서 실행 및 배포될 수 있습니다. 서블릿 컨테이너 내부에 배포하려면
