
Alexander
16.04.2018
15:45:51
И чет как-то все равно не совсем понял)
искажает/портит - но как?

Andrey
16.04.2018
15:51:50
нолики на единички меняет. и наоборот

Google

Daniel
16.04.2018
15:54:08
болт довольно тормозной на запись, и, действительно, портит данные, если приложение неудачно упадет

Alexander
16.04.2018
15:55:38
badger вот такой еще нагуглился

Mush
16.04.2018
15:57:09
badger это последователь leveldb

Alexander
16.04.2018
16:05:22
Что бы вы посоветовали выбрать по опыту? вроде как оба стораджа подходят в целом для изучения

Мерлин
16.04.2018
16:24:57
бунд поверх WAL построен, поэтому довольно быстр на запись

Alexander
16.04.2018
16:30:24
Спасибо!

Мерлин
16.04.2018
16:40:03
Спасибо!
есть один нюанс: надо понимать что все embedded решения не масштабируются от слова совсем

Alexander
16.04.2018
16:41:49
Это ок, для этой задачи подходит
А в rabbitmq mnesia вроде как хранилище?

Илья
16.04.2018
16:46:23
mnesia - это ж otp фреймворк

Maxim
16.04.2018
16:46:39
привет эрланг)))

Alexander
16.04.2018
16:47:41
Разве это Фреймворк? Помнится storage, но с Erlang очень давно работал

Google

Илья
16.04.2018
16:48:49
это кусок open telecom platform

Max
16.04.2018
17:03:22
друзья, как правильно организовать масштабируемый апликейшин внтури которого выполняются воркеры по планировщику? что бы они не выполнялись одновременно на более чем 1 ноде?
пример каждый 10 минут проверять что-то - надо что бы это выполнялось только один раз
а не одновременно на всех нодах который запущены
как правильно это с архитектурной точки зрения сделать/?

Maksim (Ellrion)
16.04.2018
17:08:49


vktr
16.04.2018
17:11:19
Немного теоретический топик хочу поднять: как тестировать grpc сервисы?
1. Сервер
1.1. Unary
Тут все достаточно просто, даже моков не надо, просто func (s *Svc)Method(ctx context.Context, args...) (ret, error)
1.2. streaming
Тут все менее красиво: мокать * StreamServer. И получаются разные вещи: возможные конфликты по импортам с vendor, если пользовать gomock, свои велосипеды-моки на стрим, и потенциально другое.
И вот вопрос, как бы такой метод тестабильно написать и потестить:
func (s *Svc) Stream(args *proto.StreamReq, stream proto.Svc_GetStreamServer) error {
b, err := s.httpClient.Get(third-party-api)
if err != nil {
return err
}
data, err := unmarshal(b, s.SomeOpts)
if err != nil {
return err
}
for _, record := range data {
result,err := s.doSmth(record)
if err != nil {
return err
}
err := stream.Send(result)
if err != nil {
return err
}
}
return nil
}
Можно написать или сгенерить мок на стрим, тогда тесты на этот метод получаются не очень красивые, ибо много лапши на сетап. А тестить надо по сути third party API


Vladislav
16.04.2018
17:15:44

Maksim (Ellrion)
16.04.2018
17:17:19

Mykyta
16.04.2018
17:26:56

Max
16.04.2018
17:32:19

Mykyta
16.04.2018
17:33:16

tsov
16.04.2018
17:38:32

Aleksandr
16.04.2018
17:46:22
ркн почти 2млн ip-адресов закинул, чтобы нас отсюда выкурить

Alexei
16.04.2018
17:49:24

Marlik
16.04.2018
17:51:14

Vladislav
16.04.2018
17:51:41

Aleksandr
16.04.2018
17:51:51
вполне вероятно что утром мы будем о 5 млн говорить)

Constantine
16.04.2018
17:51:58
надо идти спать

Google

Constantine
16.04.2018
17:52:01
завтра новый день
)))

Aleksandr
16.04.2018
17:52:06
все за ваши деньги, господа)

Constantine
16.04.2018
17:52:07
пол интернета работать не будет
чего переживать

Marlik
16.04.2018
17:52:41
В принципе я уже в i2p вылез, тут тоже мона сайтик сваять, форум.
Тут точно не достанут.

Aleksandr
16.04.2018
17:54:12
кстати, апдейты дата-центров через пуш-уведомления у телеграма была еще в 2015. может раньше. Итого мы имеем приложение, которое невозможно заблокировать, кроме как заблокировать пуш-сервера гугла/эппла либо взять измором, перебанив пол-интернета

Marlik
16.04.2018
17:55:12
Рушного интернета, остальные не заметят.

Aleksandr
16.04.2018
17:55:29
@schors

Marlik
16.04.2018
17:58:36
Не понял, россиян блочат жи... остальных-то как они осилят?

Aleksandr
16.04.2018
17:59:15
слушай, я не знаю с какой стороны ты. но с моей блочат не россиян, а для россиян

Marlik
16.04.2018
17:59:48
Ну да.

Aleksandr
16.04.2018
17:59:51
> взять измором, перебанив пол-интернета
для россиян.

Mike
16.04.2018
18:00:32

Marlik
16.04.2018
18:00:39
Дурову нуно было децентрализованный мессенджер писать... меньше гемора было-бы...

Pawel
16.04.2018
18:02:14
Борьба с мифическим международным терроризмом - прикрытие банальной борьбы за пользователей Телеграма. Для холопов есть усмановский Там-Там, а нравится он вам или нет - да кого это волнует?

Marlik
16.04.2018
18:02:23
Исходники i2p есть, правда на Java... Щас даже айтупи для андроида и йоса есть... но это просто роутер, а вот как мессенджер было бы круть...

Google

Pawel
16.04.2018
18:07:57

Nick
16.04.2018
18:10:28

Phil
16.04.2018
18:11:54

Marlik
16.04.2018
18:12:04

Nick
16.04.2018
18:12:37
i2p тоже не полностью децентрализованный

Aleksandr
16.04.2018
18:13:02
Павел Дуров пообещал, что с 22 апреля новая версия Телеграма начнет обходить блокировки по технологии domain-fronting. "Клиенты для всех платформ смогут соединяться с доменами clients4.google.com и graph.facebook.com и проксировать соединение дальше. Согласие Гугла и Фейсбука нами уже получено" - написал Дуров в своем твиттере.

Mush
16.04.2018
18:13:05

Marlik
16.04.2018
18:14:50

Slava
16.04.2018
18:16:17
будет как в китае
ничего недоступно, только внутренние, разрешённые ресурсы =)

Ivan
16.04.2018
18:17:44
подскажите, как избавится от такой конструкции
User, _ := c.Get("User")
User_ := User.(model.User)
что бы User сразу был как .(model.User)

Александр
16.04.2018
18:18:05

Lev
16.04.2018
18:19:25
может он в директ написал)

Aleksandr
16.04.2018
18:19:25
Времена постправды
Возможно фейк. Вероятно. Слишком сладко казалось

Max
16.04.2018
18:26:27

Алексей
16.04.2018
18:49:25
Добрейший вечерок господа ,ребят где найти инфу по написанию функциональных тестов при помощи библиотек json, и go-resty!может кто то где то встречал ?кроме официальных ссылок на эти библиотеки! спасибо заранее

Илья
16.04.2018
18:49:31
Да хоть майсиквель, хоть зукипер, любой distributed lock подойдёт

Mykyta
16.04.2018
18:59:16

Алексей
16.04.2018
19:03:41
Добрейший вечерок господа , где найти инфу по написанию функциональных тестов при помощи библиотек json, и go-resty!может кто то где то встречал ?кроме официальных ссылок на эти библиотеки! спасибо заранее

Google

Ivan
16.04.2018
19:08:58

Антон
16.04.2018
19:10:07

Vladislav
16.04.2018
19:10:42

Mykyta
16.04.2018
19:10:51

Ivan
16.04.2018
19:11:40
там exist - т.е. существует ли переменная, я понял, ее надо проверить, а то что я это использую
User_ := User.(model.User)
это нормально?

Mykyta
16.04.2018
19:14:41


The
16.04.2018
21:18:22
господа, xml умеет паковать и распаковывать map[string]interface{}? есть структура, и к ней в догонку нужно паковать всякий мусор в эту мапу. все это потом сохраняется как xml файл. нужно, чтобы и эти данные сохранялись. я тут прикуралесил уже xml.Marshaler, и все ок. А вот с распаковкой траблы, там и слайсы, и мапы, и булевы значения. Вот собственно вопрос возникает, можно ли это все не ручками декодить? Если XML это как-то запаковал, то может он умеет сам распаковывать?
<Data>
<values>
<string>abc</string>
<slice>hello</slice>
<slice>world</slice>
<number>1</number>
<float>1.23</float>
<bool>true</bool>
<nestedMap>
<nestedKey>nestedValue</nestedKey>
</nestedMap>
</values>
</Data>

Yevhen Nakonechnyi
16.04.2018
21:56:10
xml.Unmarshal. А в чем собсна проблема? Передал xml и структуру и все распакуется

The
16.04.2018
21:59:21

Yevhen Nakonechnyi
16.04.2018
22:05:47
А, нужно interface{} распаковать? Ну тогда ручками. Я подумал что есть struct, которий нужно паковать/распаковать. Недопонял. Можно поискать какую нибуть либу для етого.

The
16.04.2018
22:10:16
я думал, может в json запаковать, а потом в base64.

Finch
16.04.2018
22:15:10
Когда стоит использовать ГО вместо node js?

Ivan
16.04.2018
22:18:56

Finch
16.04.2018
22:29:46
Когда пишешь сервис
Я сервис и на ноде могу написать. Можно подробнее с примером, когда по вашему стоит использовать ГО а когда году?
Ноду

Zaur
16.04.2018
22:54:38
Знаешь го, не знаешь ноду, пишешь на го
Знаешь ноду, но не знаешь го, пишешь на ноде
Знаешь ноду и го, пишешь на чём по кайфу
Но советчик из меня хреновый ?