
The
21.04.2018
08:47:46
А, хотя если вы имеете ввиду один коннект, это sql.Open(), то он под собой создает не лимитированное количество коннектов, что, собственно, решает вашу задачу, но безконтрольное создание коннектов != хорошо.

Alexey
21.04.2018
08:48:26

The
21.04.2018
08:51:55
ещё SetConnMaxLifetime поставил.

Google

Alexey
21.04.2018
08:54:01
Почему тогда db.SetMaxOpenConns(100), если в базе ограничено 50ю? База будет ругаца на лишние коннекты

The
21.04.2018
08:56:11
это я образно описал, на самом деле там чуть по другому, колличество коннектов лежит в файлике с конфигом. на боевом читается конфиг и устанавливается 50.

Alexey
21.04.2018
08:56:34
Вот было ещё недавно
Если вы используете пакет sql.DB, то вам определенно пригодится эта статья. Расказывают о том. как подкрутить перфоманс ?.
http://techblog.en.klab-blogs.com
А если памяти хватает, то и 1000 коннектов для базы нормально

The
21.04.2018
08:59:13
там раньше была vps на 1 гиг, потом место кончилось, и я проапгрейдил план выше, а конфиг старый остался.

Alexey
21.04.2018
09:00:22
100 в дефолтном мускуле, это такое... чтоб везде работало.
Даже для гига оперативы это мало, там метров 200 нужно для 100 коннектов, если остальное не трогать

The
21.04.2018
09:02:10
там зависит от буфферов, на каждый коннект выделяется свой буффер. т.е., образно если у тебя 100 коннектов и буфер 2М, то 200М. но это очень утрированно.

Alexey
21.04.2018
09:02:24
Да

The
21.04.2018
09:03:07
у меня там буфера выше чем дефолтные помоему.

Google

The
21.04.2018
09:03:31
я не помню точно, но вроде у MariaDB конфиг дефолтный чуть отличается от MySQL

Alexey
21.04.2018
09:14:29
Коннекты у марии в дебиане по дефолту 100

The
21.04.2018
09:16:54
кто-то мне говорил, что с 5.6 или 5.7 версии MySQL, MariaDB смерджили все наработки в InnoDB, и теперь разницы между MySQL и MariaDB особой нет. Но не уверен, честно говоря. Там кстати MySQL 8.0 зарелизили. https://www.opennet.ru/opennews/art.shtml?num=48466

Alexey
21.04.2018
09:19:19
В мускуле обычно чего-то нехватает, от марии, со строками работы, что-то в прошлом году нехватало. На марии написали, а на мускуле не заработало

Drul_cyka
21.04.2018
09:54:36
Можете подсказать статьи про стриминг (http) в go? Сервер должен отдавать видео файлы длительностью по 5-6 часов, поэтому требуется возможность перемотки, но я без понятия как ее реализовать

Maxim
21.04.2018
10:06:13
Ребята, всем привет!
Решил собрать в одном канале книги про Go, чтобы каждый раз их не искать по всему телеграму и интернету :)
https://t.me/golanglibrary
Кому интересно подписывайте, если хотите закинуть в канал книги, которых там еще нет - пишите мне @mxssl

Marlik
21.04.2018
10:08:54

The
21.04.2018
10:09:28

Vyacheslav
21.04.2018
10:12:15

The
21.04.2018
10:13:17

Maxim
21.04.2018
10:13:48

The
21.04.2018
10:15:05
сами книги не обязательно выкладывать, можно выкладывать название книги. найти не составит труда. в awesome-go вроде нету ссылочек на статьи и видео-доклады.


Yura
21.04.2018
10:17:07
Можете подсказать статьи про стриминг (http) в go? Сервер должен отдавать видео файлы длительностью по 5-6 часов, поэтому требуется возможность перемотки, но я без понятия как ее реализовать
Вариант а) отдавай файл, а браузер сможет перемотать. Главное правильно отдавать Range: bytes запросы. Но стандартная библиотека это умеет (ServeContent).
Браузеры и правда умеют. Хром умеет хорошо. Firefox, к сожалению, хуже: он жадно пытается выкачать как можно больше.
Вариант б) пользователи используют флэш. Ищещь одну из двух-трех библиотек, перепаковывающих mp4 для флэша, доводишь их до ума, подсовываешь под ServeContent.
Минусы: флэш пракиютически умер.
Вариант 3) mpeg-dash. Для клиента запилить mpeg-dash player, скопировав большую часть у одной из трех известных джавскрипт библиотек.
С подготовкой файла замороччки правда:
подвариант а) нарезать заранее одной из двух консольных утилит (написанных не на Go).
подвариант б) изучить таки внутреннее устройиство mp4 и mpeg-dash и сделать всё самой в том виде, в каком хочется. Подглядывая в nginx и известные библиотеки для нарезки под флэш.


Marlik
21.04.2018
10:18:30
Флеш не просто умер, он опасен, нашли в нём кое что... поэтому лучше его вырубить нах.

Drul_cyka
21.04.2018
10:18:43

Aleksandr
21.04.2018
10:19:01

Marlik
21.04.2018
10:19:39

Temich
21.04.2018
10:20:03
?

Marlik
21.04.2018
10:20:38
https://www.securitylab.ru/news/491225.php

Google

Yura
21.04.2018
10:21:08

Marlik
21.04.2018
10:21:49

Yura
21.04.2018
10:22:22

Max
21.04.2018
10:22:24
АБИДНА

Marlik
21.04.2018
10:22:47

Aleksandr
21.04.2018
10:23:10

The
21.04.2018
10:36:12
Не помню как этот закон называется, лет 7 назад сидел на античате, уже и забыл. Думаю, можно его назвать "Закон неуловимого Джо". Суть в том, что чем популярней продукт, тем более вкусен он для взломщиков.

Petr
21.04.2018
10:39:13
Ох, античат

Никита
21.04.2018
10:58:04
И эти дыры активно эксплуатируются злоумышленниками

Kirill
21.04.2018
11:02:26
Хай гайз. Ктониб с github api работал?

Petr
21.04.2018
11:02:34
Хочу заметить, что раньше активно юзали EXIF в картиночках для хакинга

Oleg
21.04.2018
12:20:04
кто пользует https://github.com/improbable-eng/grpc-web в проде?

Marlik
21.04.2018
12:53:32
Чото не пойму, Бубунта ускорилась что-ли? У неё есть в репе go 1.10.1 сук обновился, терь две.

Petr
21.04.2018
12:55:31
Она от дебиана же зависит, если там завезли, то и тут завезли

Marlik
21.04.2018
12:56:16
Плят, переустанавливать всё заново что-ли, я ручками ставил свежую, терь она не свежая...

Petr
21.04.2018
12:57:26
Можешь завести свой репозиторий локальный и сделать ему приоритет выше и собирать deb пакеты локально )
Делов минут на 20

Google

Marlik
21.04.2018
13:00:19
Дык если бубунта будет норм обновлять, то смысл ковыряться, из коробки удобнее жи...

Petr
21.04.2018
13:01:23
Ты же линуксоид, что за лёгкие пути )

Marlik
21.04.2018
13:02:14
Не смешно)))))

Andrii
21.04.2018
13:29:23
func GetResources(w http.ResponseWriter, r *http.Request) {
var resources []Product
db.Find(&resources)
json.NewEncoder(w).Encode(&resources)
}
есть такая функция в коде, но нужно еще сделать следуеще:" You should handle the error if any.
And return 500 status error if the error has happened." Кто может дописать код, чтоб я понял как ето делать и прописивать в go и нужно ли подключать библиотеку для ошибок?

Daniel
21.04.2018
13:30:56
а?!
коллега, это базовые вещи же

Andrii
21.04.2018
13:31:39
ну как ошибки прописать я шарю
а как исправить ошибку если такая есть
первий пункт
как я должен ето сделать

Илья
21.04.2018
13:31:58
какие ошибки? куда прописать?

Andrii
21.04.2018
13:32:08
Ну
статус

Daniel
21.04.2018
13:32:11
вас не просят их исправить

Andrii
21.04.2018
13:32:11
точнее

Илья
21.04.2018
13:32:21
ты не обрабатываешь ошибки при обращении к дб

Daniel
21.04.2018
13:32:24
вас просят их отрепортить в виде возврата 500 по http

Andrii
21.04.2018
13:32:30
А
окей
спасибо

Google

Daniel
21.04.2018
13:32:38
и как это сделать - написано в доке на http.ResponseWriter,

Andrii
21.04.2018
13:33:37
Спасибо

21.04.2018
14:31:17
На Go есть майнеры?
Не биткоин

Andrew
21.04.2018
14:32:17

21.04.2018
14:33:18

Nickolay
21.04.2018
16:37:38
Народ, а что входит в "джентельменский" набора разработчика на Go? Если бывали на собеседках на енти специальности, то опишите, что вас спрашивали и в каком объеме, плес.

Max
21.04.2018
16:39:32

Nickolay
21.04.2018
16:39:46
Окей, спасибо.

Max
21.04.2018
16:41:39
Окей, спасибо.
Ну типо Linux (Bash/Shell), Docker, Kubernetes, Apache/Nginx, SQL, REST

some_random_anonymous
21.04.2018
16:43:50
AWS, Terraform, продукты Hashicorp

Max
21.04.2018
16:44:08
Azure ещё

Dmitry
21.04.2018
17:11:32
это вы точно о программисте а не devopse ?

Vyacheslav
21.04.2018
17:30:30
вот да, у меня как раз вот это вот всё и есть вся работа =)

Александр
21.04.2018
17:33:06
народ а кто работал с bcrypt?