@proelixir

Страница 959 из 1045
Dmitry
18.05.2018
11:26:56
А как он залочится то?

Александр
18.05.2018
11:27:34
ну он набирает задачи пока не кончится очередь, либо пока не попадётся задача для пользователя для которого он обрабатывает

типа поддерживает set множество пользователей которые в данный момент обрабаытваются

Dmitry
18.05.2018
11:28:35
Ну а если второй комп параллельно выгребает?

Google
Dmitry
18.05.2018
11:28:52
И u1-2 выполнится раньше чем u1-1

Александр
18.05.2018
11:28:54
на втором компе будут только воркеры-подзадач

то есть u1-1,u2-1,u3-1,u4-1 обработаются параллельно потом u1-2, потом u1-3,u2-2

Dmitry
18.05.2018
11:30:12
Не, чёт сильно плохо с горизонтальным масштабированием в этой схеме

Александр
18.05.2018
11:30:57
ну с блокировками всегда так себе с горизонтальным масштабированием

Dmitry
18.05.2018
11:31:04
Ладно, сделаю без ack

И будет норм

Вангую

А чуть что - буду делать свой кролик

Александр
18.05.2018
11:32:00
тогда если воркер умрёт, задача потеряется

Dmitry
18.05.2018
11:32:17
Не потеряется

Я имел ввиду с ack но без лока

Т.е. 100 воркеров = 100 каналов

Google
Dmitry
18.05.2018
11:33:19
Хотя, нахрена тут акк

Если все равно будет слишком поздно

Ладно, посмотрим

Потеряется - и хрен с ним

Значит пользователь не кликнул куда-то)

Alex
18.05.2018
11:57:51
Вроде для кролика был плагин sharding exchange, но я не помню, что в нем с ребалансом

Александр
18.05.2018
12:17:45
хорошая идея конечно для аггрегирующего плагина

Dmitry
18.05.2018
15:48:48
Вопрос, здесь говорили о cachex, а никто не сравнивал его случайно по скорости с con_cache?

Alex
18.05.2018
16:07:05
@Virviil а у тебя опыта с tarantool нет? у них в модуле очередей, кажется, есть то, что тебе нужно https://github.com/tarantool/queue#utube---a-queue-with-sub-queues-inside

кажется даже в точности твой кейс

Dmitry
18.05.2018
16:09:50
Выглядит похоже

Почему луа блять

Ничего не понятно

Dmitry
18.05.2018
16:23:10
Lua - можно освоить за 1-2 дня. Он один из самых простых языков программирования.

(Если уже умеешь программировать)

Alex
18.05.2018
16:25:02
у меня скорее сам тарантул бы вызвал вопросы

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

а "понимать" это заметный порог вхождения для любой бд

Dmitry
18.05.2018
16:43:01
Может быть я когда нибудь делаю на тарантуле все это

Но пока что хрен с ним )

Google
Dmitry
18.05.2018
16:44:09
Я просто представляю глубину жопы, в которую меня отправит devops ))

Alex
18.05.2018
16:50:25
ну вот я так же облизываюсь на него, но всерьез рассматривать не получается

Константин
18.05.2018
16:52:00
Его очень круто юзать в качестве быстрых очередей

для разного рода CPA или тизерных сетей

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

Alex
18.05.2018
16:53:23
меня тянет на нем сделать кастомные очереди на замену тому, что у нас есть, но все равно много работы нужно

Константин
18.05.2018
16:53:27
Достаточно просто поставить и заюзать на мелкой задаче)

Alex
18.05.2018
16:54:00
несмотря на все плюшки в коробке, работы много понадобится

Константин
18.05.2018
16:54:43
Если не будет от этого никакого профита.. то надо ли)

"работает? не лезь))"

Лучше новое писать или переписывать реально нужное

Alex
18.05.2018
16:58:45
в том и дело, что переписывать действительно нужно

и tnt выглядит очень привлекательной платформой

но все равно инвестиции очень солидные получаются

Константин
18.05.2018
17:00:05
Есть такой плюс, как работа с этой самой очередью в фоне

если такое надо

Смотря откуда данные берутся и т.д.

Dmitry
18.05.2018
17:00:46
А как там передаются данные?

Через бинарный протокол и сокет?

Константин
18.05.2018
17:01:12
Вроде http было

Google
Константин
18.05.2018
17:01:19
надо глянуть реализации

Dmitry
18.05.2018
17:01:28
Http?

Так на самом протоколе вся скорость потеряется

Не может быть

Alex
18.05.2018
17:01:52
http можно, но вообще там свой протокол

Dmitry
18.05.2018
17:02:12
В rmq я упаковал erlang term to binary

И получил

Без всяких лишних

Кайф короче

Мне кажется там должно быть тоже самое

Иначе не имеет смысла

Константин
18.05.2018
17:04:56
Да, там по всякому можно

он и сам свой http сервер умеет делать

а так по tcp слушает

Я гоню, http было не с ним))

это я с кликхаусом так работал

Там вот что весело.. ты можешь запустить в отдельном потоке функцию, которая будет цепляться к mysql, доставать данные, обрабатывать их и складывать к себе. Потом ты по ним можешь телать быстрые поиски и всю фигню

Если у тебя тизерка, то это прям супер

особенно в фоне обновлять веса тизеров в момент их доставания. Там такая адовая скорость, что ни одна другая база так не сделает

а вот еще недавно делали решение.. куча запросов по API, надо делать валидацию запроса на уникальность кучей способов

Google
Alex
18.05.2018
17:10:52
> запустить в отдельном потоке функцию ну все же не потоке, а файбере

Константин
18.05.2018
17:11:05
да)

Alex
18.05.2018
17:11:08
но хуже от этого не становится, конечно

Константин
18.05.2018
17:11:20
сам факт, что оно работает))

Так вот, мы хранили все запросы за месяц в тарантуле

он сам их удалял

но поиск делали в начале по тупому, каждый раз создавая запрос.. там штук 300-500 было в него за 1 сек

и это из php

потом переписали на функцию в lua и тупо скармливаем ей сам запрос

за 0,0000 отдает ответы)))

просто сказка))

Нагрузка растет, а мы отдыхаем)

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

Alex
18.05.2018
17:30:37
В rmq я упаковал erlang term to binary
так tnt-queue тоже вроде пофиг, что ты в payload положишь

abc
19.05.2018
04:00:31
Просто с точки зрения эффективности связка JS/React очень выигрывает с аналогичными решениями
Скорее всего выигрывает связка JS/Vue уж очень много проектов на vue

Страница 959 из 1045