@jvmchat

Страница 1036 из 2890
Aliaksei
14.01.2017
11:57:34
это не значит быть заблокированным

Oleksandr
14.01.2017
11:57:36
только драйвер если поддерживает
не, ясно, что блокировка таки будет, если драйвер не умеет полноценный асинх с тредпулом выходит "виртуальный асинх"

sss3 ?
14.01.2017
11:58:13
Aliaksei
14.01.2017
11:58:46
будет "подписка" на окончание, поток может выполнять другу работу

Google
Sergey
14.01.2017
11:59:16
На ок отдельный поток, но в какой то момент мы все равно будем ждать данные
Не никто ждать не будет все будет паралельно если правильно спроектировать

Aliaksei
14.01.2017
11:59:51
насчёт тред пула - если он забьётся то что тогда?

Sergey
14.01.2017
12:00:42
Он забьется если намеренно тупить и забивать его

Aliaksei
14.01.2017
12:01:14
если много клиентов

Oleksandr
14.01.2017
12:01:57
насчёт тред пула - если он забьётся то что тогда?
смотря какой тредпул если фиксированный, то запросы будут ждать если динамический, то он добавит себе тредов по необходимости

Aliaksei
14.01.2017
12:02:24
не контролировать пул потоков? так ещё хуже ж будет

Sergey
14.01.2017
12:02:24
если много клиентов
Все будет паралельно, утлизация cpu будет 100%

Nick
14.01.2017
12:02:54
Sergey
14.01.2017
12:03:16
Небудет никаких блокировок

Nick
14.01.2017
12:04:15
Не понял, ты ж говоришь отдельный пул для блокирующих операции, че эт их не будет)

Ivan
14.01.2017
12:04:40
ну будут потоки лочится ну и что в пуле новые создадутся

пока ресурсы есть

Google
Nick
14.01.2017
12:06:08
Если поток висит на блокировке, то откуда быть утилизации ?

Sergey
14.01.2017
12:06:59
Это не теория, это практика, во время нагруз тест у меня сервер обслуживал 60к клиентов одновременно и утилизировал 100% cpu. 4 ядра. Это говорит о том что практически никаких блокировок нет. Поэтому я так и топлю за Акку.

Sergey
14.01.2017
12:08:17
Первый Сервер на потоках java concurency. Держал 8к клиентов максимум, и утилизировал 30% cpu

Sergey
14.01.2017
12:10:46
А бывают какие то другие потоки?
Разные подходы, стандартный concurency и акторный подход

Aliaksei
14.01.2017
12:10:54
А если бы на Go написали бы а не на akka ))

Nick
14.01.2017
12:12:11
А бывают какие то другие потоки?
Пох что джава потоки на них мапятся

Anton
14.01.2017
12:13:04
Акторы, конечно, хорошо. Но в конечном итоге, это всё равно джавайские потоки. Тут просто разница в том, что если ты сам на потоках что то делаешь то для того же самого результата надо больше работы сделать, чем в агентах акки, потому что большая часть работы там за тебя уже сделали

Sergey
14.01.2017
12:13:14
Ну так ты заблокируй поток и посмотри что будет
Если медленным(блокирующим) операциям назначить отдельный поток, то получится что все другие операции так же весело паралельно будут отрабатывать, а медленные будут выполняться по очереди в рамках одного потока

Anton
14.01.2017
12:14:02
Кстати, могу ещё предложить на Quasar посмотреть

Nick
14.01.2017
12:14:31
Anton
14.01.2017
12:14:47
Это ещё почему?

Nick
14.01.2017
12:15:16
Anton
14.01.2017
12:15:18
У них тоже весьма интересное решение для concurrency

Google
Nick
14.01.2017
12:16:12
А так потрки и железо то одинаковое
В винде потоки другие. Да и процы разные

Руслан
14.01.2017
12:16:34
Всмысле может какие-то другие модели разработки тоже хорошо работают

Sergey
14.01.2017
12:17:11
Эт далеко не правда. Просто твои пул очень быстро кончится и все встанет колом
Он не кончится, потому что мы этим операциям назначили отдельный поток (ядро) эти задачи не будут лезть на другие ядра

Oleksandr
14.01.2017
12:18:23
А акторам на JVM есть альтернатива?
котлин корутины, конечно же!

Руслан
14.01.2017
12:19:04
котлин корутины, конечно же!
Хорошая попытка, но Котлин корутины это что угодно может быть

Sergey
14.01.2017
12:19:14
А акторам на JVM есть альтернатива?
Я сейчас vertx пытаюсь понять

Nikita
14.01.2017
12:20:00
Господа, а в явовском хешмапере хеш каждого элемента меньше buffersize хешмапы?

Nick
14.01.2017
12:20:35
wat

Sergey
14.01.2017
12:20:47
Руслан
14.01.2017
12:20:53
пул у тебя бесконечный?)
Судя по всему не получится у тебя объяснить что если во всей цепочке есть блокирующие операции, то теряется смысл асинхронности

Nikita
14.01.2017
12:20:54
Тоесть хеш равен (hashCode() mod buffersize)?

Nick
14.01.2017
12:21:03
Естественно!
ну удачи чо

Google
Nick
14.01.2017
12:21:26
Естественно!
если пул бесконечный, то у тебя система будет тратить время cpu только на диспетчирезацию самой себя)

Nikita
14.01.2017
12:22:16
Ну блин. Знаешь как хешмап работает?

Sergey
14.01.2017
12:22:36
Судя по всему не получится у тебя объяснить что если во всей цепочке есть блокирующие операции, то теряется смысл асинхронности
Верно, но даже если и есть то их в конфиге можно замапить на отдельный пул и они не залочат всю систему

Nikita
14.01.2017
12:22:55
Хеш там как вычисляется?

Admin
ERROR: S client not available

Nikita
14.01.2017
12:23:20
Окей, в лучшем случае какое время поиска по хешмапе?

Sergey
14.01.2017
12:23:23
залочат!
Почему?) Ты серьезно или это тролинг?

Nick
14.01.2017
12:23:34
Хеш там как вычисляется?
ты наверное имеешь ввиду как опрелеляется бакет

Nikita
14.01.2017
12:23:42
Да

Nick
14.01.2017
12:24:05
Да
так и говори)

Nick
14.01.2017
12:24:28
O(1)?
не время, а трудоемкость

Nikita
14.01.2017
12:24:33
Не суть

Nick
14.01.2017
12:24:50
да, в лучше случае трудоемкость O(1)

Google
Nikita
14.01.2017
12:25:01
Ясно

Спасибо

Sergey
14.01.2017
12:25:10
2. даже если бы были бесконечные - залочили бы)
У меня на небесконечных даже не лочат, а обращения к базе есть! Шах и мат)

Nick
14.01.2017
12:25:31
стоит только выбрать все потоки из блокинг пула

и приехали

Руслан
14.01.2017
12:26:10
Надо fixed пул делать

Это азы блин)

Nick
14.01.2017
12:26:29
Спасибо
жаль ты про логарифм не спросил

Nikita
14.01.2017
12:26:52
Так нет там логарифма

Sergey
14.01.2017
12:26:57
стоит только выбрать все потоки из блокинг пула
Я так понимаю что кроме concurency многопоточности ты больше ничего не юзал?

Nikita
14.01.2017
12:26:58
Поиск не бинарный

А просто "дай мне k-ый элемент"

Nick
14.01.2017
12:27:32
Так нет там логарифма
есть там логаримф, в случае при определенном трешолде и случаее)

Nikita
14.01.2017
12:28:00
Окей, а когда там нет логарифма?

Sergey
14.01.2017
12:28:04
у тебя нагрузка недостаточная
Достаточная - Утилизация cpu 100%

Nikita
14.01.2017
12:28:10
И будет O(1)?

Nick
14.01.2017
12:28:15
А просто "дай мне k-ый элемент"
в бакете поиск либо линейный, либо логарифм

Nikita
14.01.2017
12:28:26
А ну в бакете

Сам бакет то без логарифма?

Страница 1036 из 2890