Fork me on GitHub
#clojure-russia
<
2017-11-07
>
asolovyov09:11:31

а кто-нить с aleph/manifold возился тут? А то есть непонятная для меня вещь, пытаюсь переписать код с кор асинка типа такого:

(go-loop [x 0]
  (if (> x 3)
    x
    (do
      (<! (timeout 1000))
      (recur (inc x)))))
и не могу понять, как в (d/loop [] ... (d/chain ... #(d/recur))) вставить таймаут. В одной из док манифолда внутри deferred юзается Thread/sleep, но я как-то побаиваюсь, потому что модель исполнения алефа и манифолда мне до конца не понятна. Но как-то других вариантов я придумать не придумал. 🙂

gsnewmark11:11:30

можна еще (d/chain (d/timeout! (d/deferred) 1000 nil) (fn [_] ...)) (создает deferred которьій вернет nil через ~1000ms), но тоже не очень ок 😞 : d/timeout! по умолчанию использует single thread ScheduledThreadPoolExecutor из manifold.time https://github.com/ztellman/manifold/blob/2642ffd97aadae4dbf4ad3ac10a82f49c2c1200d/src/manifold/time.clj#L226-L239, которьій может бьіть занят или даже заблочен другим кодом

asolovyov12:11:59

да, шось какое-то западло 😞

mike_ananev11:11:06

@asolovyov Александр, а почему с кор.асинка на манифолд переводишь?

asolovyov12:11:31

@mike1452 onyx-http хочу обновить, там внутри был jet, который теперь не мейнтейнится

rustam.gilaztdinov14:11:37

@asolovyov а можешь рассказать про onyx, где используете, как впечатления от него в целом? Лично мне очень нравится идея masterless, и куча плагинов (которые видимо не работают trollface )

asolovyov14:11:23

мы сидим на 0.9, а сейчас текущий 0.11 - и они несколько плагинов не обновляли, в т.ч. и onyx-http, который мы юзаем

asolovyov14:11:25

поэтому приходится самому ща

asolovyov14:11:40

юзаем для всякой стриминговой херни

asolovyov14:11:01

отправляем им емейлы, перегружаем данные из одной системы в другую, такое

asolovyov14:11:24

публикация всяких изменений на сайт часто через него

rustam.gilaztdinov14:11:12

Много тачек под него держите?

asolovyov14:11:33

та не, на трёх запущен и это плюс минус оверхед пока

asolovyov14:11:36

ну ща уже не так, как раньше

asolovyov14:11:52

но в целом всё оч просто, надо будет больше - раскатаем больше

asolovyov14:11:20

этот момент как раз очень клёвый, одна из причин, почему оникс, а не другие штуки: легко размножать

asolovyov14:11:51

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

rustam.gilaztdinov14:11:16

Да, о порог вхождения можно запнуться. Но в целом, все как rich завещал, sme

mike_ananev14:11:05

вот я об него и запнулся

asolovyov14:11:08

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

mike_ananev14:11:11

не хватило времени просто

asolovyov14:11:23

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

asolovyov14:11:30

а с хелперами текста раза в 3 меньше выходит

rustam.gilaztdinov14:11:25

А может ты с нами поделишься на хенгауте своими наблюдениями? Я бы с удовольствием послушал

rustam.gilaztdinov14:11:11

Если есть время и желание, конечно)

asolovyov14:11:11

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

asolovyov14:11:23

переводя на нормальный - в декабре разве шо )

rustam.gilaztdinov14:11:01

Да, было бы клёво! Спасибо)

rustam.gilaztdinov15:11:31

@nicola Николай, добрый день, а можем мы договориться на хенгаут с @asolovyov про onyx в декабре?)

mike_ananev15:11:01

кложа релиз кандидат 1 вышел

niquola16:11:12

Да конечно - давайте! @asolovyov - готов?

Dmitry16:11:42

привет! тогда может быть лучше стрим на ютубе?)

niquola17:11:36

он и будет