Explore server-side Kotlin with coroutines in this GOTO Chicago 2019 conference talk by Roman Elizarov, Kotlin Libraries Team Lead at JetBrains. Dive into the scalability and reliability challenges of traditional thread-based stacks and learn how to mitigate these issues using Kotlin coroutines. Discover how coroutine-based design naturally avoids common pitfalls of asynchronous programming, including resource management, error handling, and request cancellation. Examine the benefits of using coroutines for writing efficient server-side code on the JVM, and gain insights into topics such as suspending functions, thread pools, CPU-bound code, fine-grained control, and concurrency. Compare asynchronous servers with coroutine-integrated servers, and understand the concept of green threads and fibers. Learn about coroutine scopes, conventions, and how types can serve as documentation and enforcement mechanisms. Conclude with an exploration of returning multiple responses using Kotlin flows.
Read more