заметки лида
271 subscribers
83 photos
18 videos
126 links
jvm, web, backend, etc.
но это не точно
сохраняю интернет


@qweezique
Download Telegram
#study #kotlin #reactive

«... Корутины нужны для асинхронных задач, которые ожидают чего-либо большую часть времени. Потоки для интенсивных CPU задач.»

Несколько недель вкатываюсь в корутины.

Вводный roadmap по теме:

1. Что это вообще такое, «корутины»? [habr]

2. Введение от «создателя» Романа Елизарова, доклад «Корутины на сервере» [yt]


☝️ Роман == concurrency магистр; куча докладов, блог на medium.com

3. Корутины - must have в мобильной разработке, поэтому через android к знаниям; курс от Android Broadcast [yt playlist]

4. Продолжаем смотреть на корутины через android. Формат «хаотичное изучение» от Redmadrobot (Костя, привет!) в трех частях [yt]:
- Часть 1
- Часть 2
- Часть 3

5. Ок, ладно. Зачем мне это на сервере?
«Kotlin Coroutine + Spring Webflux. От идеи до продакшена» [yt] - описан case использования и разница в реализации, начиная от java+webMVC до kotlin+webFlux

Знакомимся с понятияем реактивного/non-blocking подхода в medium статье от Кирилла

☝️ Еще можно глянуть плейлист «Reactive programming with Java» [yt playlist], или для ленивых 34 Creating a reactive Spring Boot app

6. Хорошо, можно попробовать переписать родненький starter MVC на что-то реактивное. В докладе Asynchronous Programming with Kotlin Coroutines in Spring [yt] как раз это и делают - GitHub

Цикл статей на habr про адаптацию приложений к реактивному стеку

7. *Kotlin Coroutines in Practice by Roman Elizarov [yt]


Офдок, конечно же, в самом конце - coroutines guide (JB)

Тема довольно большая, в том числе вопросы как быть с блокирующим open feign клиентом, которого так много в рабочих приллах (брать стороннюю библиотеку); если уж топить, то смотрим r2dbc реактикный клиент для работы с БД