@scala_ru

Страница 218 из 1499
Sergey
09.11.2016
13:23:42
Ну и на его базе https://github.com/scalikejdbc/scalikejdbc-async

Igor
09.11.2016
13:25:33
даже если используется синхронная БД, асинхронный IO дает буст

Mikhail
09.11.2016
13:25:35
кстати что-то вспомнилось, что и не только mysql бывает в роли mysql )) помню как запилил сервис с протоколом мускуля к собственному хранилищу, чтобы из пхп можно было стандартными драйверами пользоваться))) эх ностальжи

Igor
09.11.2016
13:25:40
лучшее враг хорошего :)

Google
Mikhail
09.11.2016
13:26:46
даже если используется синхронная БД, асинхронный IO дает буст
оно не всегда верно. бдшка тоже не супермен. от того, что ей как можно больше запросов напихаешь - не обязательно все быстрее заработает)

Борис
09.11.2016
13:27:12
даже если используется синхронная БД + пул потоков с синхронным ио + пул потокв на все остальное, даст профит, как мне кажется

Mikhail
09.11.2016
13:33:19
даже если используется синхронная БД + пул потоков с синхронным ио + пул потокв на все остальное, даст профит, как мне кажется
это тоже немного заблуждение, по крайней мере в такой формулировке. пул потоков используется в первую очередь для поддержания постоянных соединений к источнику и менеджинг очереди на стороне клиента. и здесь есть нюанс, если ты ожидаешь свободного потока из пула в синхронном режиме - твой исполнительный поток тоже лочится. следовательно если у тебя под капотом используется executor с джобами - то он просто не выйдет у тебя из джоба и не будет обрабатывать остальные, пока ты не закончишь. и тобишь если у тебя так все твои экзекуторы войдут в ожидание - профита в скорости никакого и не будет)

это я все упростил конечно как обычно, но суть одна)

а, ну и про пулы можно упомянуть - что это для разгрузки базы)

чтобы она не пыталась лопатить хренову тучу запросов одновременно)

Борис
09.11.2016
13:34:45
эм.. чего это ему лочится?

Aleksei
09.11.2016
13:35:24
а мне кажется вопрос был про синхронизацию фьюч, бери да в форе синхронизируй =)

Mikhail
09.11.2016
13:35:59
эм. ну ты же знаешь как пулы работают? когда ты просишь в синхронном режиме новое соединение - он ждет пока кто-нибудь освободиться и только после этого отдает тебе и лочит на это время твой поток)

KrivdaTheTriewe
09.11.2016
13:36:00
не подскажешь?

Mikhail
09.11.2016
13:36:35
не понял сути вопроса, проблема то какая?

Google
Mikhail
09.11.2016
13:37:38
"дао завернуть для стриминга" - это немного непонятно. дао - это дао, оно не говорит о синхронности-асинхронности, а стримы - это стримы - разные категории

Борис
09.11.2016
13:41:43
эм. ну ты же знаешь как пулы работают? когда ты просишь в синхронном режиме новое соединение - он ждет пока кто-нибудь освободиться и только после этого отдает тебе и лочит на это время твой поток)
пул системных потоков + плюс пул соединений - это на работу с бд, плюс отдельно пул для бизнес логики, потоки для бизнес логики нигде не должны лочатся, вроде

Mikhail
09.11.2016
13:42:34
между прочим, для синхронного пула можно вполне сделать асинк адаптер, который будет отдавать коннект в асинке. @krivdathetriewe наверное это как раз ответ на то, что ты хотел узнать. если нет возможности использовать асинк соединения

пул системных потоков + плюс пул соединений - это на работу с бд, плюс отдельно пул для бизнес логики, потоки для бизнес логики нигде не должны лочатся, вроде
пул системных потоков - это как раз таки совсем другое. потому что там блокировки как раз таки нет особо. система сама менеджит исполнение кода и исполняет твой байтики по пачкам и в любой момент может тебя приостановить и исполнить другой поток

а пулы соединений ждбц - они не умеют так. они ждут, пока ты все что тебе надо не выполнишь и сколько бы у тебя времени это не заняло (если нет таймаута) и только затем, после того как ты сам скажешь, что ты все - эту дорожку отдают другому просящему

KrivdaTheTriewe
09.11.2016
13:45:31
Не, не про это, я просто не совсем понимаю как каноничней сделать выделение соединения, вот к примеру имеем http://pastebin.com/m4YFU56m

Aleksei
09.11.2016
13:46:03
ну тройные же кавычки мать вашу

или ссылка на гист

ну йоптваю мать как в первом классе

или ссылка на пэйстбин

ну сюда то срать зачем?

KrivdaTheTriewe
09.11.2016
13:47:18
убираю

Denis
09.11.2016
13:47:33
херово тут форматирование и подсветка работают

лучше ссылку на гист

Mikhail
09.11.2016
13:53:02
@krivdathetriewe без полной задачи ничего особо не скажешь. потому что возможно, что надо поменять общий подход к решению задачки) у тебя partitionedRecords.forEach - синхронный или асинк?

KrivdaTheTriewe
09.11.2016
14:05:27
@krivdathetriewe без полной задачи ничего особо не скажешь. потому что возможно, что надо поменять общий подход к решению задачки) у тебя partitionedRecords.forEach - синхронный или асинк?
он на разных нодах кластера выполняется, то есть мне нужно написать некоторый класс, который серилизуется и при этом скрывает в себе реализацию коннешона к базе, плюс желательно. чтобы на каждом экзекьюторе соединение устонавливалось однократно ( то есть делался борров) , но и при этом я весь пул не истощил

Mikhail
09.11.2016
14:10:27
если у тебя пул не в виде прокси для всех нод, а клиентскими средствами менеджится - то у тебя и так они не смогут истощить друг друга. а если ты боишься, что в рамках одной ноды у тебя какой-то поток будет забивать пул - то это напрасно, потому что выборка коннекта из пула синхронная и любой поток сможет вклиниться в очередь. просто не забывай возвращать в пул соединение после микродействия. либо делай буфер -

и только после накопления буфера бери коннект и пользуй его - так быстрее будет - у тебя же аналитика судя по коду, нет нужды по одному запросу гонять) но все как всегда от кейса зависит

KrivdaTheTriewe
09.11.2016
14:12:57
не, я батчем, я же не пидор:)

Mikhail
09.11.2016
14:13:15
пацан щитай)

Google
Mikhail
09.11.2016
14:15:59
но я такие вещи даже батчем не делаю. если упрощенно - то делаю отдельный аггрегирующий стрим и уже из него батчем - хоть в лайве, хоть delayed - самое быстрое так, если очень надо. правда и тулзы я в таких случаях другие пользую

Wystan
09.11.2016
16:27:15
Хорошие стикеры, распространил по чатам.

Alexander
09.11.2016
16:29:00
ага, один из лучших паков

tom of finland еще есть для ценителей :d

Alex
09.11.2016
16:29:24
πdr štle

Dmitry
09.11.2016
19:59:23
наконец-то нормальные стикеры

folex
09.11.2016
19:59:48
у меня их есть

Dmitry
09.11.2016
20:01:31
раз тут все равно уже скалой не пахнет

скажите, может тут кроме политологов еще и медики есть

the sublethal (TD(50)) and lethal (LD(50)) doses, which were, respectively, 55 +/- 0.35 and 750 +/- 0.40 mg/kg.

Это ведь опечатка?

саблитал 550 а не 55 ?

это важно :>

т.е. 75 а не 750

750 +/- 0.40 дазент мейк сенс.

James Tiberius Kirk ?
09.11.2016
20:05:58
если погуглить эту фразу, то везде указано 750

гуглить первым куском без цифр

офк

Dmitry
09.11.2016
20:07:38
хз как ты гуглил. в любом случае лучше ошибиться в сторону саблитал, чем вжарить 500

Denis
09.11.2016
20:09:00
LD 50 мне понятен, что такое sublethal?

Google
Denis
09.11.2016
20:09:11
типа почти отъехал?

James Tiberius Kirk ?
09.11.2016
20:09:18
хз чего ты ожидал услышать от медиков, когда даже название вещества не вкинул, для которого TD50 и LD50 смотришь

A dose containing not quite enough of a toxin or noxious substance to cause death.

ну да, почти отъехал)

Denis
09.11.2016
20:10:21
странная хрень

LD 50 - 50% подоптных умерло

Dmitry
09.11.2016
20:10:45
скорее ты прав, да.

Denis
09.11.2016
20:10:46
как мерить TD 50?

Dmitry
09.11.2016
20:10:56
100% подопытных умерло

а, стой

Denis
09.11.2016
20:11:27
TD 50 - 50 % стало хреново

James Tiberius Kirk ?
09.11.2016
20:11:31
50% подопытных подверглись токсикации организма

Denis
09.11.2016
20:11:34
тогда может и быть такая разница

Dmitry
09.11.2016
20:11:37
https://en.wikipedia.org/wiki/Median_toxic_dose

James Tiberius Kirk ?
09.11.2016
20:11:39
видимо в большой мери

Dmitry
09.11.2016
20:11:40
тут должно быть

James Tiberius Kirk ?
09.11.2016
20:11:51
ну как я и сказал

Denis
09.11.2016
20:11:55
все таки 55мг - хреново, 750 смерть

Dmitry
09.11.2016
20:12:06
может , но +/-0.40 не может повлиять на 750

не поверю :)

Google
James Tiberius Kirk ?
09.11.2016
20:12:15
я бы на месте @I_Rony придерживался доз до 55

Denis
09.11.2016
20:12:18
так это погрешность измерени

Dmitry
09.11.2016
20:12:19
749.6 еще живой, 750 все сдохли

кабумски

Denis
09.11.2016
20:12:40
типа всем давали дозу 750 +-

James Tiberius Kirk ?
09.11.2016
20:12:52
749.6 еще живой, 750 все сдохли
это ж мг на кг, умножай эти 0.4 на 80 кг веса

Dmitry
09.11.2016
20:12:57
the median toxic dose (TD50) of a drug or toxin is the dose at which toxicity occurs in 50% of cases.

вообще мне надо делить а не умножать

но не важно :)

Denis
09.11.2016
20:13:33
ну между токсичностью и смерть большой гэп

так что нормальные цифры

James Tiberius Kirk ?
09.11.2016
20:14:47
по моему опыту так с кислотами всякими. Любая кислота проявляет свою токсичность от капли на марки, а для сметельного исхода надо влепить грамм 50 внутрь

Dmitry
09.11.2016
20:14:56
грамм? :)

там микрограммами меряется

Страница 218 из 1499