Overview
Explore the advanced capabilities of Ktor 3.0 in this comprehensive conference talk from GOTO Amsterdam 2024. Dive into the framework's unique features, including its powerful testing library with built-in mocking, integration with Koin for dependency injection, GraphQL support, and OpenTelemetry for observability. Learn how to leverage Kotlin Native and Gradle to build native images and package them in Docker containers. Discover the process of creating and publishing custom plugins to extend Ktor's functionality. Through a practical case study, witness the incremental implementation of these advanced features, gaining insights into intermediate and advanced Ktor functionalities. Understand the performance improvements in version 3 resulting from the migration to kotlinx-io. Cover topics such as prototyping with Kotlin notebooks, building and testing services, WebSocket implementation, Kotlin Multiplatform (KMP) support, and new features in Ktor 3.0.
Syllabus
Intro
What makes Ktor different?
Prototyping with Kotlin notebook
How do we build the service?
How did we build the service?
What are our test cases?
Creating unit tests
But wait! There's more...
Koin /Ktor integration
But wait! There's more...
GraphQL
WebSockets
But wait! There's more...
KMP
OpenTelemetry
Retries
3.0 Features
Conclusion
What did we learn?
Outro
Taught by
GOTO Conferences