
Mikhail
03.02.2017
11:17:46

Митко Соловец?
03.02.2017
11:18:02

Andrey
03.02.2017
11:18:18
не знать погба в 2к17
это ж надо в футбол втыкать. не всем интересно смотреть, как миллионеры ногомяч отпинывают

Aleksei
03.02.2017
11:19:10

Google

Vyatcheslav
03.02.2017
11:19:29

Митко Соловец?
03.02.2017
11:20:20
https://www.instagram.com/p/BP0C-etAAkL/
>В течении рабочего дня можно принимать пищу несколько раз,уложившись в 1 час ?.
молодцы, что уточнили, а то шумиха была, вах

Sergey
03.02.2017
11:24:43

Nikolay
03.02.2017
11:26:40
@CapDev в случае с игровым сервером - akka наверняка хорошее решение, потому что stateful удобно писать

Vyatcheslav
03.02.2017
11:26:56

Sergey
03.02.2017
11:27:51

Vyatcheslav
03.02.2017
11:30:07
А еще интересно, транзакции нужны были и как сделали (в разрезе акторов)? Теоретически, под транзакцию можно отдельный актор завести, но интересно как у вас было

Sergey
03.02.2017
11:30:19

Vyatcheslav
03.02.2017
11:31:42
понятно, ну да, с монгой целиком обновлять норм

Sergey
03.02.2017
11:32:43

Google

Vyatcheslav
03.02.2017
11:33:28
спс за ответы

Dmitry
03.02.2017
11:43:05
Коллеги. А как вы профайлите свой многопоточный код? Например, есть akka-streams код, который в сущности берёт по сети и кладёт в БД. Как можно понять, на каком этапе "бутылочное горлышко" -- это сеть, десериализация, обработка, сериализация, или бд?

Vyatcheslav
03.02.2017
11:44:29
тут как-то предлагали замерять каждый этап
каким-нибудь kamon
кстати, спецы по akka-streams, а можно ли как-то декорировать стрим, чтобы каждый шаг автоматически замерялся, и не приходилось везде писать код для замера?

Mikhail
03.02.2017
11:47:20
Коллеги. А как вы профайлите свой многопоточный код? Например, есть akka-streams код, который в сущности берёт по сети и кладёт в БД. Как можно понять, на каком этапе "бутылочное горлышко" -- это сеть, десериализация, обработка, сериализация, или бд?
чаще всего, если программист не понимает где у него в многопотоке бутылочное горлышко, то ответ - он сам бутылочное горлышко. не всегда конечно, но чаще всего)

Dmitry
03.02.2017
11:48:10

Alexander
03.02.2017
11:49:11
Что за мем про Марину?

Nikolay
03.02.2017
11:49:36
почитай выше

Vyatcheslav
03.02.2017
11:49:55

Sergey
03.02.2017
11:50:22

Nikolay
03.02.2017
11:50:33

Mikhail
03.02.2017
11:50:35
спасибо за конструктив
но ведь это действительно так. и чем быстрее поймешь - тем лучше. в многопотоке всего два варианта где может быть бутылочное горлышко.
1. проблема в одном из чанков - и тут понятно, что человек не знает сколько выполняется тот или иной отдельный блок и не может соотнести с остальными известными частями
2. проблема в менеджменте готовых данных между чанками - и тут возможно человек не понимает инструмент, который использует для менеджмента

Dmitry
03.02.2017
11:52:11

Alexander
03.02.2017
11:52:28
Кто-нибудь уже пытался сервер майнкрафта на акка стримы переписать?

Dmitry
03.02.2017
11:52:52
Догадаться, что даёт больший эффект -- сеть, диск или код стримов -- невозможно. Особенно, если в чужом окружении код запускается

Sergey
03.02.2017
11:53:13
С Akka проще , она заставляет тебя разбивать на независимые куски. Соответственно потом не сложно сделать что бы актор замерял сколько он работает и скидывал это актору метрики

Dmitry
03.02.2017
11:53:31
у акки другие проблемы :)

Mikhail
03.02.2017
11:53:34

Sergey
03.02.2017
11:54:07
или по очередям орентироваться

Google

Dmitry
03.02.2017
11:54:15
ну опять конструктив. в ответ на вопрос говорить "это потому у тебя проблемы, что не знаешь ответа"

Mikhail
03.02.2017
11:54:44

Dmitry
03.02.2017
11:54:53
я реально не знаю, как устроена сеть у клиента, не могу знать. и какое железо. мне нужно поставить эксперимент, по которому я смогу понять, что и как

Mikhail
03.02.2017
11:56:05
нужно понимать примерно как устроена сеть, как устроена работа с сетью, как устроен конкретный инструмент выбранный для абстракции над сетью. про диски тоже самое - надо примерно знать логику работу и приблизительные характеристики тех или иных вариантов хд и методов работы с ними

Sergey
03.02.2017
11:56:20
Мы сеть посчитали очень просто
знаем средний размер пакета * пакетов в сек * кол-во клиентов

Mikhail
03.02.2017
11:57:07
не обязательно знать все досконально. но если не иметь понимания приблизительного по времени того или иного чанка, ты рискуешь с помощью профилировщика получить неверные ответы
это сплошь и рядом у джунов
слышат звон, не знают где он
замеряют кусок профилировщиком и думают, что там жопа и начинают это дело масштабировать. а там всего-то надо подход поменять или конфиг изменить

Vyatcheslav
03.02.2017
11:58:06
Вообщем, расходимся. А я пойду Руслану Черемину напишу под его видосом на youtube, что он НУБИЩЕ. Замеряет память по кой-то черт. Просто он ничерта не понимает, все же просто.

Mikhail
03.02.2017
11:58:33

KrivdaTheTriewe
03.02.2017
12:00:05

Mikhail
03.02.2017
12:00:41

Sergey
03.02.2017
12:01:06
Опять всё скатывается в "про баб" )

Vasily
03.02.2017
12:01:13
Я вот скалолаз, но на скале не пишу, Лахвич болдерингист, но на скале пишет :(

Sergey
03.02.2017
12:01:55
Лучше про королёв расскажите

KrivdaTheTriewe
03.02.2017
12:02:12

Grigory
03.02.2017
12:10:46

Nick
03.02.2017
12:11:44

Grigory
03.02.2017
12:12:56
вроде до го только и разговоров было что об акке

Google

Diemust
03.02.2017
12:21:26
val chan = FileChannel.open(path, Set(WRITE, CREATE).asJava)
source
.fold(0l){ (count, byteString) => count + chan.write(byteString.asByteBuffer) }
.runWith(Sink.head)
.andThen { case _ => chan.close() }
может кто объяснить, почему так делать неочень?
source - akka-stream

Nick
03.02.2017
12:24:03
кстати я видел много задач, где выпиливают акку)

Vyatcheslav
03.02.2017
12:30:42

Diemust
03.02.2017
12:31:32
это плохо, если это дело только религии =)
в теории может быть chan не инициализирован в фолде?

Vladimir
03.02.2017
12:33:58
Не правильнее будет граф разделить: чтобы отдельно был счетчик, отдельно сохранятель?

Admin
ERROR: S client not available

Diemust
03.02.2017
12:34:54
ну вообще сделано было через ActorSubscriber
но тут возник вопрос, а чего это не сделать в пару строк кода

Vladimir
03.02.2017
12:39:14
я диванный теоретик, вопрос скорее риторический, как separation of concerns)

Grigory
03.02.2017
12:49:13

Sergey
03.02.2017
12:49:41
акка не нужна ведь

Nikolay
03.02.2017
12:50:16

Oleksandr
03.02.2017
12:52:34
например спарк
вродь они выпилили из-за проблем конфликта версий, плюс что акка была немного не их кейсом
а не из-за тормозов или багов

Grigory
03.02.2017
12:53:22

Aleksey
03.02.2017
12:58:21

Vasily
03.02.2017
12:58:44
Аватарка хипстерская

Google

Alex
03.02.2017
13:13:10
интересно запилят ли какую альтернативу акке
чтоб вместно акторов был какой нибудь калькулус
join там или fusion
видимо без массированного вброса бабла ничо не будет
ну или сама акка усилиями учоных потиху переползёт в ту сторону, см последние размышления куна
я на химист поглядываю но там конечно на одном виницком далеко не уедет

Diemust
03.02.2017
13:16:29
ох уж эти массированные вбросы бабла. Давайте соберемся всей конфой и запилим свою крутую акку =)

Alex
03.02.2017
13:16:58
ну круто было бы начать коммитить просто в chymyst :)

Oleg
03.02.2017
13:17:42

Alex
03.02.2017
13:17:48
https://github.com/Chymyst/joinrun-scala

Oleg
03.02.2017
13:18:17
declare a non-blocking molecule s

Diemust
03.02.2017
13:20:36
сложна

Aleksey
03.02.2017
13:29:34

Alex
03.02.2017
13:30:01
ну в рамках самого формализма нет, как я понимаю

Aleksey
03.02.2017
13:31:22
То есть это скорее замена FRP чем акторам, в которых смена повдений (собственно стейт) это самое главное?

Alex
03.02.2017
13:32:20
ну это как с фп и ооп
экспрессивность то одинаковая, но методы разные
так-то джойн-калькулюс равномощен акторам, в отличие от фрп

Aleksey
03.02.2017
13:33:27
То есть там есть аналог замены поведения?

Alex
03.02.2017
13:34:40
ну там есть "реакции" которые поглощают старые значения и отдают новые