
Nikolay
04.12.2017
20:21:01
а еще там у тебя пример про perfect REST, когда такого в продакшене реальном в принципе не существует

Roman
04.12.2017
20:21:15

Nikolay
04.12.2017
20:23:30

Google

Nikolay
04.12.2017
20:23:47
в свое время в Радио-Т Умпутун неплохо на эту тему тоже порассуждал

Александр
05.12.2017
07:34:19
полный капец :(
читаю доку, в гугле. Вроде дают структуру потом в комментах "это не так, это не так"
эталонной структуры апп не могу найти

Kirill
05.12.2017
13:36:11
Есть какой-нибудь способ представить непустой []interface{} в виде литерала?
Т.е. иными словами мне нужно записать в виде литерала такой код:
i := make([]interface{}, 0)
i = append(i, 1)
i = append(i, "123")

Pawel
05.12.2017
13:44:33
a := []interface{}{
0,1,"123",
}

Kirill
05.12.2017
13:45:31
О, огонь, спасибо) Не догадался вторые фигурные поставить

Александр
05.12.2017
13:54:07
тааак
кто мне тут заливал что надо хадлеры делать от application? ересь!
если у меня больше 1 хадлера это конфикты имен, которые сразу начинаю убивать интерфейс http.Handle
из за этого юниттесты не сделать

Nikolay
05.12.2017
14:01:51
товарищи, а в каких случаях dep ensure и go get по одному и тому же адресу могут ставить разные версии пакетов?

Google

Vladimir
05.12.2017
14:02:28
если не сказано обратного

Nikolay
05.12.2017
14:02:33
я пытаюсь go-git поставить, если делаю go get gopkg.in/src-d/go-git.v4 - ставится новая версия
а если делаю dep ensure - старая качается и ничего не компилится
[[constraint]]
name = "gopkg.in/src-d/go-git.v4"
version = "4.0.0-rc15"

Andrew
05.12.2017
14:03:17

Nikolay
05.12.2017
14:03:17
в томле вот такая хрень

Vladimir
05.12.2017
14:03:28
который был 3 месяца назад

Nikolay
05.12.2017
14:03:54
и как его заставить скачать последнюю версию?
или единственный выход - отказаться от dep?

Vladimir
05.12.2017
14:06:41
точнее version
либо при добавлении новой либы указывать [собака]master
dep ensure -add foo/bar@master

Nikolay
05.12.2017
14:13:09
dep приятный, но как-то нихрена не очевидно пока

nezorflame
05.12.2017
14:17:21

Nikolay
05.12.2017
14:17:45
а еще они его обещают вот-вот категорически ускорить

Google

nezorflame
05.12.2017
14:18:03
скорее, официальный эксперимент

Nikolay
05.12.2017
14:18:04
но пока что-то не получается

Aleksey
05.12.2017
14:24:44
Сделал простой тестовый REST API сервис. На базе (postgres) с несколькими записями INSERT запрос выполняется 1 секунду, по сравнению с GET в 13мс. Это вообще нормальное время или я что-то делаю не так?

Александр
05.12.2017
14:26:50
а ты посмотри это именно postre шалит?
или же в коде проблемы

Aleksey
05.12.2017
14:27:25
Код до безумия простой, как можно проверить postgres?

Александр
05.12.2017
14:28:15
можно бечмарком нативным

Andrew
05.12.2017
14:28:43
еще может сетевое соединение лагать

Александр
05.12.2017
14:29:46
самое простое:
start := time.Now()
// тут добавляем в постгре что-то
elapsed := time.Since(start)
log.Printf("Execution time %s", elapsed)

Aleksey
05.12.2017
14:32:57
start := time.Now()
err := um.DB.QueryRow(query, userDraft.Email, userDraft.Hash).Scan(&user.Id, &user.Email, &user.Created, &user.Updated)
elapsed := time.Since(start)
log.Printf("Execution time %s", elapsed)

Aleksey
05.12.2017
14:33:33
Выполняется 13мс - пойду искать дальше

Александр
05.12.2017
14:35:11
ты уверен что QueryRow исполняет уже?
может там Exec есть далее
я не знаю драйвера просто

Aleksey
05.12.2017
14:36:20
да, log.Printf("Execution time %s", elapsed, user) уже возвращает пользователя
Извините за беспокойство, это хэширующая функция работает 1сек. Кстати, в связи с этим вопрос - это нормальное время работы?

Aleksandr
05.12.2017
14:42:57

Айбелив
05.12.2017
14:43:27
*1сек

Google

Alexander
05.12.2017
15:28:45
Кто использует монго драйвер? Посоветуйте "живую" библиотеку пожалуйста.

Admin
ERROR: S client not available

Aleksandr
05.12.2017
15:39:19

Alexander
05.12.2017
16:40:26
гитхаб что говорит?
mgo ед. более менее(ща юзаю), но он по контрибьютингу не выглядит живым и не поддерживает 3.6 монгу
может есть у кого опыт по внедрению офф либы на сях в go проекты?
cgo

Subbotin
05.12.2017
16:48:39

Kirill
06.12.2017
06:12:06
Утро боброе, немного странных вопросов.
Есть огромная примерно мапка на 4 гига, которая реально используется в одной вместо бд.
Мапка читается из файла при запуске сервиса, иногда файл и мапка обновляются.
Какие могут появиться проблемы из-за столь такой кучи данных в одной переменной?
1) Доступ к ней параллельный, RWMutex вроде закрывает все что нужно.
2) Никаких транзакций и надежных записей не нужно.
3) Про масштабирование пока не говорим.

Alexey
06.12.2017
06:37:26

Kirill
06.12.2017
06:51:04
Чтение долгое из файла)
Ну тут какая штука. Сейчас без лока данные читаются в еще одну мапку (да, двойная трата оперативы), а потом уже свежепрочитанная мапка с локом присваивается.

Maks
06.12.2017
07:46:37

Alexey
06.12.2017
07:58:31
нужно больше orm

Kirill
06.12.2017
08:01:55

Maks
06.12.2017
08:08:58
https://golanglibs.com/top?q=mongodb+driver

Kirill
06.12.2017
08:12:46

Alexey
06.12.2017
08:36:40

Alexander
06.12.2017
08:38:22
По человекочасам


Nikolay
06.12.2017
08:41:33
Сорри за оффтоп, но не могу молчать…
К себе в команду на проект Blockchain платформы ищу Go разработчика.
#вакансия #компания #s7
Локация: #москва #офис
Контакты: n.mukhanov@s7.ru, или в личку.
ЗП: 140-200
Задачи:
- Разработка бэкенд сервисов на Go (Hyperledger Fabric);
- Работа с внешними API.
Требования:
- Уверенное знание Golang
- Уверенное пользование ОС Linux, Docker;
- Знание JavaScript (ES6+)
- Опыт работы с Git.;
- Опыт написания Restful API;
- Умение разбираться в чужом коде.
Желательно:
- Опыт работы с MongoDB, NodeJS
- Техническое образование.
Условия:
- Стабильная работа с постоянной загрузкой в надежной компании;
- Развитие и совершенствование в коллективе профессионалов одного из лидеров отрасли;
- Регулярное повышение квалификации и участие в конференциях;
- Возможность роста и самореализации в динамично растущей организации;
- Льготные авиаперелеты для сотрудника и членов его семьи.
- При желании возможно развитие в области Big Data и Blockchain.
- Офис на м. Тверская (и через полгода - м. Театральная)

Google

Alexey
06.12.2017
08:59:19
в s7 блокчент внедряют

Phil
06.12.2017
09:00:12
Это типа чтобы сейвится в воздухе?

Александр
06.12.2017
09:00:38
даешь черные ящики в блокчейн!

Phil
06.12.2017
09:01:13
ыыы

Александр
06.12.2017
09:01:33
самолеты не смогу падать, надо ждать синхронизации же

Nikolay
06.12.2017
09:01:34
бойтесь, скептики
https://www.s7.ru/home/about/news/s7-airlines-v-partnerstve-s-alfa-bankom-zapustila-novoe-reshenie-po-prodazhe-aviabiletov-na-baze-ethereum

Kirill
06.12.2017
09:01:47

Nikolay
06.12.2017
09:02:12
короче, у нас есть решение в продакшене на Ethirium. Следующая версия будет на Fabric, поэтому нам нужны хорошие Go разработчики. Если тут есть такие.

Phil
06.12.2017
09:02:12