
Quet
11.03.2017
12:24:29
кладешь ее в интерфейс
и потом пытаешься этот интерфейс скастовать в другую структуру
в го нет structural typing

Vadim
11.03.2017
12:25:55
хм, интересно, пойду ковырять

Google

Quet
11.03.2017
12:27:21
https://play.golang.org/p/7J7d6Hay1i

Vadim
11.03.2017
12:33:39
вообще на самом деле у меня в SubscribeData будет анмаршалиться жсон и в зависимости от plugin name будет отправляться в разные обработчики, у которых поле Data разное, но там вылезло уже немного другое, пойду ковырять, спасибо)
ща наверное я вообще зря затеял кастовать типы

Vladimir
11.03.2017
12:56:14
Хм, народ, может кто знает, есть ли готовая хорошая библиотека пригодная для реализации следующего:
Хочется чтобы когда приходит http запрос с одинаковыми параметрами, реально делала работу только одна горутина, а остальные стояли на мьютексе и ждали бы результата, который бы потом висел в кэше некоторое небольшое время

Denis
11.03.2017
12:58:54
Почему не просто кеширующий прокси
Я как понимаю нужен именно такой результат
Если хочется прямо в го
Что-то такое находил

Yura
11.03.2017
12:59:54

Denis
11.03.2017
13:00:02
Но все равно именно кеширование

Vladimir
11.03.2017
13:01:34

Denis
11.03.2017
13:04:21
Понял

Google

Denis
11.03.2017
13:04:26
Тут уже велосипеды

Vladimir
11.03.2017
13:04:33
На 1 запрос аллоцируется порядка 5-6гб оперативы

Yura
11.03.2017
13:04:46
Хм, народ, может кто знает, есть ли готовая хорошая библиотека пригодная для реализации следующего:
Хочется чтобы когда приходит http запрос с одинаковыми параметрами, реально делала работу только одна горутина, а остальные стояли на мьютексе и ждали бы результата, который бы потом висел в кэше некоторое небольшое время
Мне приходилось самому делать:
map под мьютексом, в мапе значение - понтер на структурка с результатом interface{} и каналом struct{}.
Если значения не было, создаешь, и запускаешь горутину находящую результат, вставляешь в мап и читаешь из канала.
Если значение было, то просто читаешь из канала.
Когда результат находится, он пишется в interface{}, и канал закрывается - все ожидающие просыпаются и могут читать результат из interface{}

Vladimir
11.03.2017
13:04:52
Я видел в реальной жизни ситуацию когда таких запросов пришло в один момент 30 штук

Denis
11.03.2017
13:05:23
Можно делать хеш на запрос и лочить

Vladimir
11.03.2017
13:05:30
Просто думал вдруг есть готовая библиотека

Yura
11.03.2017
13:05:47
Го тем и хорош, что подобные велосипеды занимают 20 строк и пишутся за 20 минут

Denis
11.03.2017
13:06:02
В редиску или еще куда
Ну или Мап как выше написали
Если локальненько

Vladimir
11.03.2017
13:06:29
Точнее по факту локально и на репликах
Не вижу смысла шарить кэш пока

abc
11.03.2017
13:42:08

Dmitry
11.03.2017
13:50:17
Регистрируй по запросу задание на подготвку этго ответа
Тогда сколько угтдно запросов параллельно тебе проблем не создадут

Greg
11.03.2017
14:58:05
Кто желает в слак по Пони, прошу мне в ПМ прислать почты, я вышлю инвайт. Регистрацию открытой сейчас не сделать, ибо у многих существуют кастомные домены, которые не внести в белый лист.
Потихоньку будем развивать.
ПМ(PM) - личные сообщения

Dmitry
11.03.2017
14:58:47
Да зачем слак-то

Google

Dmitry
11.03.2017
14:58:58
Кошечки-божечки

Greg
11.03.2017
14:59:16
В будущем кто-нибудь другой займется телеграммом, если захочется. Я приверженец слака для сообществ или вообще mattermost, но для того сервер нужен

Maxim
11.03.2017
14:59:21
Зачем слак, когда есть дискорд?

Greg
11.03.2017
14:59:37
Дискорд игровой.
И это их цель основная

Nikolay
11.03.2017
14:59:46
зачем слак и дискорд, если есть IRC?

Maxim
11.03.2017
14:59:52
Дискорд игровой.
Вообще не обязательно. Даже разрабы из фейсбука со слака в дискорд пересели.
Дискорд игровой.
Пруф: https://facebook.github.io/react/blog/2015/10/19/reactiflux-is-moving-to-discord.html

Nikolay
11.03.2017
15:00:34
мне дискорд запомнился вырвиглазным интерфейсом

Maxim
11.03.2017
15:00:48

Greg
11.03.2017
15:01:11
Не исключаю. Тот же mattermost может отпасть не только из-за self-hosted, второй причиной является распространненость слака
Он есть почти у каждого, кто сидит в сообществах

Maxim
11.03.2017
15:01:46

Greg
11.03.2017
15:02:05
Если игроман-программист, то да
Дискорд всегда будет включен
Ради одного сообщества - нет

Nikolay
11.03.2017
15:02:20
а дискорд есть под линух?

Maxim
11.03.2017
15:02:32

Nikolay
11.03.2017
15:03:22
у меня его сайт без джаваскрипта ничего не показывает
салаги

Google

Nikolay
11.03.2017
15:03:43
но я до сих пор не понимаю, зачем он нужен, когда есть слак

Maxim
11.03.2017
15:04:21
В слаке, насколько помню, звонилку покупать надо

Nikolay
11.03.2017
15:04:33

Maxim
11.03.2017
15:04:43

Greg
11.03.2017
15:04:54
Определенное ограничение на количество в сообществе человек
И его тематике
Так что нет, не бесплатные )

Admin
ERROR: S client not available

Nikolay
11.03.2017
15:05:06

Subbotin
11.03.2017
15:05:06
На столько на сколько сам слак бесплатный
А слак вообще весьма дорогой

Nikolay
11.03.2017
15:05:45
на слак можно ухитриться получить грант, если я ничего не путаю

Phil
11.03.2017
15:05:52
Чего-то я туплю. А можно штатными способами сделать в структуре поле string/[]byte, так чтобы стандартный json воспринимал его "левым" json. Например, я в поле payload пихаю ещё какой-то развернутый json, и мне в структуру прилетает просто строка. И наоборот - я кидаю в это поле строку, которую считаю json, и оно у менв json гармонично вставляется.

Maxim
11.03.2017
15:06:53
да вроде как в хэнгауте, до 10 человек бесплатно
В личных сообщениях звонки до 10 человек без ограничений, с возможностью сменить сервер. В своей/чужой "гилдии" - вообще не ограничено (если админ гильдии не указал иное). Было дело сидел в комнате с 300+ человек - ни лагов, ни проседаний.

Nikolay
11.03.2017
15:07:26
у нас в слаке в комьюнити 3500 в одном чате

Maxim
11.03.2017
15:07:54

Nikolay
11.03.2017
15:08:32

Maxim
11.03.2017
15:08:53

Google

Maxim
11.03.2017
15:09:27
И я вспоминаю какое говнище был скайп, который на 10 человек умудрялся лагать, кряхтеть и тупить, это ужас просто.

Nikolay
11.03.2017
15:12:26
был?

Maxim
11.03.2017
15:13:09
был?
Насчёт того что сейчас - не знаю, он попросту перестал у меня работать. А последний раз серьёзно в нём сидел года два назад, до того как про дискорд узнал

Subbotin
11.03.2017
15:27:13
Ну логично. Скайп не имеет сервера который бы миксил голосовые потоки, а слак гонит все через свои сервера. Потому что скайп бесплатный а слак 50 баксов с рыла в год.

Nikolay
11.03.2017
15:31:52
зато скайп умеет в p2p, а слак пока нет
может, сделают

Vladimir
11.03.2017
15:58:37
@Enchantner а это разве не выпилили?

Nikolay
11.03.2017
15:58:46
я так сидел с компа в скайпе через ноут
когда упала проводная сеть, а вайфай работал

Subbotin
11.03.2017
16:38:00
Не. Пока не выпилили. Но работают над этим
Тут надо только понимать разницу между сигналкой и медиа. И между one2one звонками и конференциями

ainu
11.03.2017
17:27:04
https://play.golang.org/p/ynEEZga8GQ
RawMessage тип называется

Phil
11.03.2017
17:33:28
А всё, а нашел откуда это

ainu
11.03.2017
17:34:46
https://play.golang.org/p/IR1_O87SHv

Phil
11.03.2017
17:35:09
Спасибо огромное. Достаточно было ткнуть в это место в доке :))
А, это просто []byte, т.е. можно просто string(). Супер. Я скорее для payload с собой таскать в базу и обратно