웹 프레임워크 또는 라이브러리는 ktor가 실제로 수행하는 통합 테스트 수단과 함께 제공되는 경우에만 적용됩니다. 모든 사람 리소스를 검색하기 위한 GET 라우팅이 이미 표시되었기 때문에 끝점을 테스트할 수 있는 방법을 살펴보겠습니다. 이 문서에서는 영사 서버로 마이크로 서비스 아키텍처를 빌드하기 위해 Ktor 프레임 워크를 사용하는 방법을 제시했습니다. 우리는 라우팅, 로깅, 메트릭 및 서비스 간 통신 중에 영사와 상호 작용하는 자체 기능을 구축하기위한 몇 가지 고급 솔루션과 같은 몇 가지 기본 Ktor 기능을 사용했습니다. Ktor는 매우 흥미로운 프레임 워크 것 같다. 나는 확실히이 프레임 워크의 개발의 진전을 따를 것입니다. 샘플 응용 프로그램이 있는 소스 코드는 저장소 https://github.com/piomin/sample-kotlin-ktor-microservices.git GitHub에서 사용할 수 있습니다. 우리는 Ktor 프레임 워크의 상단에 구축 된 두 개의 마이크로 서비스를 만들 것입니다: 계정 서비스 및 고객 서비스. 응용 프로그램 고객 서비스는 지정된 고객의 모든 계정을 검색하기 위해 계정 서비스에서 노출된 끝점을 호출합니다. 두 마이크로 서비스 모두 개체를 추가하거나 찾기 위한 다른 끝점을 노출합니다. 아키텍처에는 검색 서버라는 세 번째 요소도 있습니다.

이를 위해 하시코프의 영사를 사용할 것입니다. 계정 서비스의 모든 인스턴스는 검색 서버에 등록하고 고객 서비스는 레지스터 인스턴스 목록을 가져와 주소와 포트를 가져옵니다. 요약하면, 이 블로그의 이전 기사 중 일부에 제시된 마이크로 서비스 간의 일반적인 통신 예입니다. 샘플 시스템 아키텍처는 다음 다이어그램에 시각화됩니다. 이 문서에서는 Kotlin웹 서비스 라이브러리 ktor를 살펴보았으며, 이는 Kotlin에서 경량 웹 응용 프로그램을 매우 빠르게 작성할 수 있는 간단한 수단을 제공합니다. ktor는 코틀린의 아름다운 특징을 많이 사용합니다. 특히 DSL, 코루틴 및 확장 기능을 활용하므로 언어와 ktor 자체가 매우 우아합니다. ktor는 “간단하고 복잡한 사용할 수 있습니다”원칙에 따라 간단하고 매우 확장으로 Kotlin에서 웹 응용 프로그램으로 시작하려는 경우 환상적인 도구입니다. GitHub에서 개발된 웹 응용 프로그램의 전체 소스 코드를 찾을 수 있습니다.

다음을 build.gradle에 추가하여 ktor를 종속성으로 추가하고 kotlin 코루틴(쓰기시 실험적 기능)을 사용할 수 있도록 합니다. 우리는 또한 JSON 변환에 대 한 선택의 라이브러리로 잭슨을 사용 하 여 (GSON 지원도 사용할 수 있습니다). 구글이 몇 달 전 구글 I/O에서 코틀린을 안드로이드의 공식 언어로 만들었을 때, 이 언어는 안드로이드 세계에서 빠르게 인기를 얻었다. 하지만 서버 측에서는 Kotlin이 아직 광범위하게 채택되지 않았으며 백 엔드 서비스가 관련될 때 여전히 신중한 것처럼 보입니다. 다른 개발자들은 Kotlin이 충분히 성숙하다고 말하며 Java가 다른 역할을 할 수있는 모든 서버 응용 프로그램에 안전하게 사용할 수 있습니다.