Size: a a a

2020 September 23

SB

Sergey Barmin in Kotlin Moscow
источник

AN

Alexander Nozik in Kotlin Moscow
попробуем
источник

N

Nort in Kotlin Moscow
Sergey Bezrukov
Да, с таким уровнем нагрузки это уже, наверное, имеет смысл.
А у вас, если не секрет, сколько времени занимает обработка одного запроса и на что оно тратится (ЦПУ, диск, ожидание ответа от внешних систем типа БД)?
И ещё интересно, у вас 2000 рпс на один ящик? Или их несколько? И с какого кол-ва одновременно обрабатываемых запросов начались проблемы?  
Простите моё любопытство, но нечасто встретишь проекты на спрингбуте с такими нагрузками на один ящик.
12мс на один запрос, коннект ток с монгой чтобы данные хранить
источник

N

Nort in Kotlin Moscow
А так в основном ЦПУ чтобы цифорки посчитать
источник

N

Nort in Kotlin Moscow
И у нас конечно шесть или семь ящиков с лоадбалансингом
источник

N

Nort in Kotlin Moscow
Но поскольку разработчики дорогие то конечно есть ещё что причесать
источник

SB

Sergey Bezrukov in Kotlin Moscow
Nort
И у нас конечно шесть или семь ящиков с лоадбалансингом
Спасибо, интересно.  А 2000 это на один ящик или всего?
источник

N

Nort in Kotlin Moscow
Sergey Bezrukov
Спасибо, интересно.  А 2000 это на один ящик или всего?
В районе 1000 на один инстанс, ток что проверил :)
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Nort
И у нас конечно шесть или семь ящиков с лоадбалансингом
Это чего за проект такой с 6 ящиками?
источник
2020 September 25

Ⓢⓔⓡⓖ in Kotlin Moscow
Наверное, секрет
источник

SB

Sergey Bezrukov in Kotlin Moscow
Ⓢⓔⓡⓖ
Вообщем если кому интересен стек Kotlin + Coroutines + Spring + R2DBC + Postgres, то могу проконсультировать - всё работает достаточно хорошо.
А как именно у вас используются корутины и в чём они дают выигрыш?  
Если был бы какой-нибудь хелловорлд на гитхабе на таких технологиях - было бы интересно посмотреть.
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Например вот так. Это кусочек репозитория для работы с БД. Стрелочками отмечены места, где осуществляется прерывание для ожидания операции ввода/вывода с БД.
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Также всё чаще начинаем использовать вот такую штуку. Работает как обычный .map{}, но полезен для распараллеливания вычислений по разным ядрам процессора. Очень удобно.
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
То есть определяем самые тормозные места программы, где используется map. Заменяем его на parallelMap, и - вуаля - прога начинает выполняться в 3-4 раза быстрее.
источник

SM

Sergey Morgunov in Kotlin Moscow
Это чем-то отличается от обычных параллельных Java стримов?
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Принципиально нет, кроме того что синтаксически не нужно превращать в стрим
источник

ТБ

Тимур Бухараев... in Kotlin Moscow
Ⓢⓔⓡⓖ
Также всё чаще начинаем использовать вот такую штуку. Работает как обычный .map{}, но полезен для распараллеливания вычислений по разным ядрам процессора. Очень удобно.
у нас тоже похожая штука есть
единственное что смущает, что она у нас самописная, хотя такое напрашивается в базовую библиотеку

может мы проглядели и что-то такое таки есть в котлиновской стандартной библиотеке?
источник

SB

Sergey Barmin in Kotlin Moscow
Alexander Nozik
А оно уже есть? А то в 2020.2 глюки дикие
Кстати насчет глюков, с 2020.2 (на 2020.3.ЕАП повторяется) при закрытии проекта идея виснет на секунд 4-5, у всех так или моя локальная проблема?
источник

AN

Alexander Nozik in Kotlin Moscow
Sergey Barmin
Кстати насчет глюков, с 2020.2 (на 2020.3.ЕАП повторяется) при закрытии проекта идея виснет на секунд 4-5, у всех так или моя локальная проблема?
В 2020.2 виснет иногда и не на 5 секунд, а на минуты
источник