[kotlin] Ktor Core의 HTTP 서버 구현

Kotlin의 Ktor는 경량화된 다재다능한 프레임워크로, 다양한 웹 및 API 서비스를 빠르고 쉽게 구축할 수 있습니다. 이번 글에서는 Ktor Core를 사용하여 HTTP 서버를 구현하는 방법을 알아보겠습니다.

1. Ktor 프로젝트 설정

먼저, build.gradle.kts 파일을 열고 아래와 같이 Ktor Core의 의존성을 추가합니다.

val ktorVersion by extra("1.6.4")

dependencies {
    implementation("io.ktor:ktor-server-core:$ktorVersion")
    implementation("io.ktor:ktor-server-netty:$ktorVersion")
}

이제 프로젝트를 동기화하여 종속성을 가져옵니다.

2. HTTP 서버 구현

다음으로는 HTTP 서버를 구현합니다. Application.kt 파일을 생성하고 다음과 같이 작성합니다.

import io.ktor.application.*
import io.ktor.features.*
import io.ktor.routing.*
import io.ktor.server.engine.*
import io.ktor.server.netty.*

fun main() {
    val server = embeddedServer(Netty, port = 8080) {
        install(DefaultHeaders)
        install(CallLogging)
        install(Routing) {
            get("/") {
                call.respondText("Hello, Ktor!")
            }
        }
    }
    server.start(wait = true)
}

위 코드에서는 Netty 엔진을 사용하여 8080 포트에서 HTTP 서버를 시작하고, 기본 헤더, 로깅, 라우팅 등의 기능을 설치합니다. 루트 경로에 대한 GET 요청에 대한 응답으로 “Hello, Ktor!”을 반환하도록 설정했습니다.

이제 프로젝트를 실행하고 http://localhost:8080 에 접속하여 “Hello, Ktor!” 메시지를 확인할 수 있습니다.

마치며

Kotlin의 Ktor Core를 사용하면 몇 줄의 코드로 간단한 HTTP 서버를 구현할 수 있습니다. 이를 바탕으로 복잡한 API나 웹 애플리케이션을 만들어 나갈 수 있을 것입니다. 자세한 내용은 Ktor 공식 문서를 참고하시기 바랍니다.

위 글에서는 Ktor Core를 사용하여 HTTP 서버를 구현하는 방법에 대해 살펴보았습니다. Ktor를 사용하여 개발할 때 이 문서를 참고하여 빠르게 서버를 개발하시기 바랍니다.