🏁Александр
вместо всякие бонусных баксов, лучше бы просто включили услугу на N времени
🏁Александр
это честно по крайне мерее
Cat
Cat
если получить 5 + 19, то можно поднять инстанс помощнее, а не за $1
Мерль
Cat
ок, спасибо за респонс
Vadim
Vadim
Или будет после тоже?
Мерль
Или будет после тоже?
Хз, я цены не устанавливаю
Но демпенгуем специально, зарабатывваем на самом деле не на облаке, а на поддержке
Мерль
Anonymous
пытаюсь разобраться с пакетами
Anonymous
Anonymous
как-то не красиво
Anonymous
если структур пакетов будет штук 200 мне для каждого свой метод GetID писать?
Vladislav
Anonymous
Stepan
Vasily
Michail
всем привет. а кто то деплоил golan-gin приложения в azure? как лучше к этому подступиться?
Заур
Vadim
Привет, я могу общаться с mongo из разных горутин, или лучше одну на read write создавать?
Vadim
Как моднее?
Заур
Как моднее?
На сколько знаю, вроде надо скопировать сессию через session.copy() и скопированное можно юзать в горутинах
Заур
Единственное что, скопированную сессию надо завершать в конце, через close, чтобы утечки не было
Заур
В доках пример был
Заур
https://godoc.org/github.com/globalsign/mgo#example-Session--Concurrency
.
Нормально ли создавать соединение с БД в мэйне и передавать указатель на БД для вызовов?
Nikita
А внедрение зависимостей в Go не завезли?
.
Есть много способов. Я спрашиваю про конкретный
.
Какие минусы такого способа?
Cat
если объект не умеет работать с конкуррентными запросами, то беда
.
Очевидные, это какие?
Cat
это то, что тебе нужно везде пробрасывать указатель на api
Cat
ты же сам и назвал этот минус
.
Это как-то влияет на производительность, например?
Cat
влияет
Cat
если api умеет работать с конкаренси, то можно запускать несколько рутин
.
Ну, скажем так, серьезно
Cat
ну я через недельку мб сделаю бенчи, расскажу
.
Я вообще сейчас склоняюсь к варианту объявить глобальную переменную на уровне пакета с запросами к бд и не париться
Nazar
какие сложные проекты вы писали на го?
.
К чему вопрос?)
Nazar
просто интересно)0))0)
Nazar
с какими архитектурными проблемами сталкивались
Slava
а как го связан с архитектурными проблемами?
Anonymous
Ребята, для чего\в каких случаях можно было бы имплементировать интерфейс io.Reader ?
Anonymous
читаю в книжке саммерфильда пример:
Anonymous
Anonymous
Но, не понятно, чем это будет отличаться от того, что я просто создам метод с рандомным названием и буду считывать данные со структуры в слайс.
Aleksandr
Aleksandr
нет, ведь сторонняя либа не умеет читать метод Readme
Anonymous
нет, ведь сторонняя либа не умеет читать метод Readme
Если кто-то (автор сторонней либы) хочет работать с чужим кодом - он смотрит документацию\читает код или пишет свой код не глядя вообще на то, какие методы поддерживаются а какие нет и что они делают, чисто предполагая что у мея должны быть такие - то методы и они должны так-то работать?
Je
Если ридера непонятно, то посмотри на дравера субд, они все требуют Scan/Value
Aleksandr
Aleksandr
иначе конечно разницы нет
Anonymous
Но что если автор либы - я ?
Je
Аналогично, чтобы стандартный enconding/json мог работать с твоим типом, ты должен реализовать MarshalJSON/UnmarshalJSON
Aleksandr
если ты хочешь чтобы сотни либ, работающих с Reader умели работать и с твоей имплементацией, то ты имплементируешь интерфейс. если не хочешь, то не имплементируешь
Anonymous
Aleksandr
Anonymous
У меня конкретно заминка с Reader, Writer
Aleksandr
но ты знаешь что такое интерфейс? для чего его создают? для чего имплементируют?
Anonymous
Anonymous
(ну или тип интерфейс используют для передачи любых данных куда-либо)
Je
Тогда в чем вопрос? Reader/Writer у нас по аналогии с кошкой и собакой, умеешь читаться - реализуешь Read
Aleksandr
Anonymous
Если сторонняя либа имеет какие-то методы, то я пользуюсь её методами, а не наоборот
Aleksandr
в этом методе я могу слать любые данные из любых реализаций ридера.
Je
Je
если ты реализовал ридер, то можешь пользоваться ioutil
Aleksandr
Anonymous
func MySendSomeData(data io.Reader)
Я правильно понимаю, что вот это и есть ответ на мой вопрос? Именно посредством передачи аргементом типа, реализиющего ридер - и пользуется сторонняя либа?
Aleksandr
resp, _ := http.Get(...)
SendData(resp.Body)
csvReader := OpenCsv(...)
SendData(csvReader)
file, _ := OpenFile(...)
SendData(file)
Je
Посмотри, как reader часто используется в том же net/http https://golang.org/pkg/net/http/