Stepan
Ругается
Stepan
синтаксически верная конструкция?
Slava
мама ругается?
Igor
попробуй var ch [1]chan string
Заур
Когда говорят про опыт в высоконагруженных сервисах, какой стек знаний подразумевается под этим
Заур
Асимптотика алгоритмов и отказоустойчивость?
Заур
Т.е. отказоустойчивость?
Dmitry
в основном это опыт масштабирования проектов: вертикальное (в случаем оптимизации отдельных компоненотов без изменения железа) и горизонтальное (подключения дополнительного нового железа)
Dmitry
Т.е. отказоустойчивость?
отказоустойчивость это понятие растяжимое. в том или ином виде оно присуствует везде, не только в хайлоаде
Заур
Оптимизация понятна
А горизонтальное это уже типо микросервисы или балансировщик запросов?
Dmitry
это все что позволяет обработать болшее количество информации путем установки дополнительного железа.
Dmitry
если архитектура проекта позволяет это без переписывания кода(или незначительного) то говорят что она хорошо горизонтально масштабируется
Dmitry
под железом я понимаю как подключение железа напрямую так и посредством сетей
Заур
Аа, всё, я кажется врубился 😀 спасибо
Anonymous
Ребят, у меня такой вопрос.
Как будет правильно реализовать следующие:
Есть куча xml файлов и инфой на 15Мб.
Хочу спарить инфу с документов в хеш таблицу а потом в цикле писать из этой таблицы в монгу.
Насколько правильно это будет? Или стоит каждый отдельный документ писать в базу, а не раздувать ОЗУ?
vld
Зачем хеш таблица? Пиши сразу в монгу, имхо
Anonymous
Лучше писать батчами определенного размера
V
Асинхронно парсить, разбить на несколько асинхронных батчей) конвеер
Nazar
бляха, я чёт туплю
есть
type TName struct {
name string
rsp []string
}
и есть
var LIST = make(map[string]TName)
Nazar
как в LIST[id] работать с полем rsp?
L
Rsp
Nazar
append, к примеру
L
Сделай с большой буквы rsp
LIST[id].Rsp = append(LIST[id].Rsp, ...)
L
Ну лучше указатель (на TName) хранить и сначала из мапы получить его
Nazar
тогда тоже большая буква?
L
да
L
Поля с большой буквы - public
с маленькой - private
L
obj, ok := LIST[id]
L
Если указатель, то сразу меняешь Rsp, если по значению, то обратно закидывай
Stepan
Я создаю массив каналов var ch [10]chan, как мне переопределить первый эллемент и сделать его буфферизированным?
Илья
никак
Илья
хотя, что ты имеешь ввиду переопреледить, неясно
Илья
Stepan
Илья
на плейграунде не ругается
Stepan
А не, все норм, спасибо)
Anonymous
Всем привет, есть те кто работал с HomeKit?
Anonymous
всем привет
IDs := r.URL.Query()["id"]
возвращает мне слайс ["1,2,3"] с одной строкой
как можно сразу получить слайс интов?
[1, 2, 3]
не нашел примеров
делать split потом по слайсу как то костыльно(
Anonymous
а приходит /?id=1,2,3
Aleksandr
Anonymous
эх(
Alexey
Привет! Нужно смоделировать json в котором некоторые поля полиморфоные. Например, может быть просто логин, а может быть имя и фамилия:
"actor": {
"type": "login",
"login": "user"
}и
"actor": {
"type": "fullName",
"firstName": "John",
"secondName": "Doe"
}как бы это все замапить на структуры чтобы было удобно и парсить и создавать такие структуры.
Нашел только такое - http://eagain.net/articles/go-dynamic-json/ , но выглядит все это как ужасный костыль. Подскажите как сделать красиво :)
Daniel
никак
Мерль
Daniel
красиво не будет
Alexey
Daniel
реально вариантов два
Alexey
Daniel
или сделать структуру со всеми полями, или парсить в два прохода
Alexey
Мерль
мне нужно лучше, а не хуже
лучше никак
ну, можно сделать разные наборы структур, а потом json iter-ом брать поле type и применять нужную структуру
Daniel
нет базовой поддержки полиморфных структур
Alexey
прямо канал скорби :(
Alexey
спасибо!
Daniel
у всех есть свои недостатки
Daniel
на самом деле - не надо просто делать такую структуру json, и это хорошо, что она так плохо поддерживается в go - меньше будет таких уродцев появляться
Alexey
Daniel
полиморфизм - зло
Daniel
в некотором смысле - да. но - он ведь и правда зло.
Daniel
тогда - суперпозиция
Daniel
которая тоже зло, но меньшее
Alexey
это ужасно в плане типов.
Daniel
а полиморфизм не ужасен?
Alexey
нет разницы между этим и map[string]string
Daniel
разница, все же, есть
Alexey
она только в количестве возможных ошибок, но не в факте их присутствия/отсутствия
Alexander
Гайз, а не знает кто-нибудь скелет проекта на Github на Go с Oauth2 для аутентификации и сессиями - чтобы его можно было за основу взять для небольшого проекта?
Daniel
Alexey
я бы хотел чтото типа
data User = UserWithLogin | UserWithName | Anonymous
Alexey
и поддержку сериализации
Alexander
Кто как конфиги хранит в приложениях? ini? json? yaml?