Next Level gRPC With Kotlin and Coroutines
summary
Shows that 10,000 coroutines sleep for ~1s instead of 10,000s on threads and compares three toolchains: proto-plus channels, gRPC Kotlin official bindings and Square Wire. Demonstrates unary suspend functions replacing StreamObserver, bidi streams as Flow or request/response channels, and how suspension maps to backpressure. Proves cooperative cancellation propagates across network boundaries (client cancellation triggers server cancellation) and gives the pragmatic opt-out: wrap critical sections with context.nonCancelable.
AI-written summary · about
chapters (11)
- 0:00Intro
- 0:55What are Kotlin Coroutines?
- 1:37Coroutines vs. Threads
- 3:02Comparing API Ergonomics
- 3:42Unary Service
- 5:10Unary Client
- 6:28Bidi Streaming Service
- 8:20Bidi Streaming Client
- 10:36Structured Concurrency & Cooperative Cancellation
- 15:21Preventing Cancellation
- 15:59Future of The Ecosystem
related talks
40mDeep diving into the Kotlin Coroutines API
38mConcurrency doesn,t have to be hard: Kotlin Coroutines and Channels
49mAsynchronous programming with Kotlin coroutines in Spring
26mCoroutines and Rx: A Battle Towards Asynchronicity
47mKotlin Coroutines Reloaded
44mInter-Reactive Kotlin Applications
41mHanding problems, Coroutines & ReactiveX
44mGoing with the Flow - Using Coroutines 1.3.x
