こんにちは。 AnyMind Groupという会社でCastingAsiaというプロダクトのテックリードをしています。以前はScala中心でしたが、今はPython,Kotlinを使ってDDDに取り組んでいます。 本記事では、Kotlin Web Applicationでの非同期処理をどう書くかをお話できればと思います。 環境 SpringBoot WebFlux 2.2 Kotlin 1.3 なお、本記事では非同期プログラミングライブラリとしてKotlinのCoroutine( https://github.com/Kotlin/kotlinx.coroutines )を使いますが、ReactorやRxJavaなどでも代用出来るかと思います。 なぜ非同期処理を書きたいのか 用途に応じてThread Poolを分け、パフォーマンスを向上させたい IO(HTTP通信やSQLの発行、ファイル操