Slava
доброе утро
Slava
да можно любой крупный проект взять, типа kubernetes, его уже точно раз 6 переписали
Artem
Кое-кто тут не рекомендовал смотреть на код кубера
Co(n)stantine👨🔬
@onokonem
Eugene
Daniel
Artem
Мб можно на https://github.com/cockroachdb/cockroach посмотреть, правда я сам туда ещё не заглядывал
Anonymous
Vasily
Трансляция митапа Go в продакшене: https://www.youtube.com/watch?v=FCSAqFE1avk
Расписание:
— 10:30 - 11:00 – Регистрация
— 11:00 - 11:10 – Приветственное слово
— 11:10 - 11:40 – «Миллиард пушей на Go», Дмитрий Швеенков, Mail.Ru Group
— 11:40 - 12:10 – «Опыт переезда частей сайта банка с Parser на Go», Андрей Рацеров, Альфа-Банк
— 12:10 - 12:40 – «Медиасервер трансляций на GoLang», Михаил Райченко, ВКонтакте
— 12:40 - 13:30 – Пицца и нетворкинг
— 13:30 - 14:00 – «Два очень разных опыта миграции на Golang. На примере компаний Lazada и Ozon.travel», Юрий Васияров, Ozon.travel
— 14:00 - 14:30 – «Как мы начали использовать Go в Ответах@Mail.Ru», Марк Белоцкий, Mail.Ru Group
— 14:30 - 15:00 – «Опыт перехода Авито.Доставки с Java на Go», Илья Лапин, Сергей Поляков, Avito
— 15:00 - 15:20 – Кофе-пауза
— 15:20 - 15:50 – «Pipeline поиска по Почте@Mail.Ru на Go», Виктор Стародуб, Mail.Ru Group
— 15:50 - 16:20 – «Синхронизация данных в Go с помощью mysql binlog», Артем Желтак, Rambler
— 16:20 - 16:50 – «Переход web-api Почты@Mail.Ru на Go», Василий Романов, Mail.Ru Group
Видео без обработки должно быть сразу, нарезанное где-то через месяц.
Vasily
@onokonem @twentydraft коллеги, можно запинить?
Eugenii
Трансляция митапа Go в продакшене: https://www.youtube.com/watch?v=FCSAqFE1avk
Расписание:
— 10:30 - 11:00 – Регистрация
— 11:00 - 11:10 – Приветственное слово
— 11:10 - 11:40 – «Миллиард пушей на Go», Дмитрий Швеенков, Mail.Ru Group
— 11:40 - 12:10 – «Опыт переезда частей сайта банка с Parser на Go», Андрей Рацеров, Альфа-Банк
— 12:10 - 12:40 – «Медиасервер трансляций на GoLang», Михаил Райченко, ВКонтакте
— 12:40 - 13:30 – Пицца и нетворкинг
— 13:30 - 14:00 – «Два очень разных опыта миграции на Golang. На примере компаний Lazada и Ozon.travel», Юрий Васияров, Ozon.travel
— 14:00 - 14:30 – «Как мы начали использовать Go в Ответах@Mail.Ru», Марк Белоцкий, Mail.Ru Group
— 14:30 - 15:00 – «Опыт перехода Авито.Доставки с Java на Go», Илья Лапин, Сергей Поляков, Avito
— 15:00 - 15:20 – Кофе-пауза
— 15:20 - 15:50 – «Pipeline поиска по Почте@Mail.Ru на Go», Виктор Стародуб, Mail.Ru Group
— 15:50 - 16:20 – «Синхронизация данных в Go с помощью mysql binlog», Артем Желтак, Rambler
— 16:20 - 16:50 – «Переход web-api Почты@Mail.Ru на Go», Василий Романов, Mail.Ru Group
Видео без обработки должно быть сразу, нарезанное где-то через месяц.
после окончания, оставьте в доступе, пожалуйста
воскресенье, надо ребенка выгуливать, ну или она меня
Vasily
Eugenii
данке шон
Alexander
народ, дайте 720p плизз
Co(n)stantine👨🔬
😂
Alexander
Ага, спасибо большое
i..
Господа, если я создаю пользовательский тип (type ...) что бы сделать функцию у которой входной аргумент - переменная с моим типом, мне надо метод делать? (ресивер перед названием функции). Как обычно, в скобочках записать не получится? Прост сделал так, а не компилируется, то ли я чёт не вижу, то ли это так и должно быть
𝓢𝓮𝓻𝓰𝓮𝔂
Alexander
а пользовался кто-нибудь https://github.com/mailru/dbr ?
🅁
неа
Danylo
Добрый день, господа, подалуйста помогите, как я могу подсчитать количество файлов с префиксом "Data_", "CGI_" в "Contents" директории?
package main
import (
"fmt"
"io/ioutil"
"strings"
)
func main() {
counter, err := ioutil.ReadDir("C:\\Contents")
if err != nil {
defer fmt.Println(err)
}
for _, fcount := range counter {
fmt.Println(fcount.Name())
var filesCount = strings.HasPrefix("Data_", fcount.Name())
fmt.Println(filesCount)
}
}
Первая проблема в том что у меня strings.HasPrefix выдает везде false, а должно выдавать false, false, true, true, true, false, true, false, false ... то есть из 15 файлов 4 файла имеют префикс Data_ и 6 файлов имеют префикс CGI_ . Вторая проблема как правильно подсчитать количество файлов с префиксами Data_, CGI_ ? Через count++ или через добавление в массив ?
Aleksandr
полгода мастерил ботнет, а посчитать файлы не может. дОжили
Sebor▂▅▇█▓▒░
Alexander
Ребят, можно ли как-то узнать что приложение скоро крашнется по out of memory? Или нужно самому отслеживать память системы и принимать решения (например свапать данные на диск)?
Anonymous
@rvasily будут ли презентации (документы) доступны после митапа?
Alexander
Alexander
спасибо
Vasily
Alexander
чёта докладчики из авито днищенские
Alexander
про sql injectins вообще пипец
Alexander
Претензия не к докладу, чуваки молодцы. Днищеская часть про "проверяйте что вам приходит а то можете sql инъекцию словить"
Vlad
Alexander
Вообще то надо все инсерты и апдейты делать через эсккйпы делать
Vasily
Vasily
Все через плейсхолдеры
.
Aleksey
и мультиинсерты не быстрее подготовленных запросов, тем-более учитывая подготовку мультиинсерта
Alexey
Alexey
Vasiliy
Vasiliy
Там вроде проблемы утечки соединений есть
Aleksey
не замечал
Vasiliy
По крайней мере я с ними сталкивался
Vasiliy
Если один процесс только занимается записью в базу, тогда более-менее все норм, но когда процессов несколько, у базы начинаются весёлые танцы с бубном.
Aleksey
милионы строк инсертятся вложеными подготовленными, месяцами работает, память на уровне
Vasiliy
Мускуль?
Aleksey
ну процессов не так много, да...
Aleksey
у меня мс и мария
Vasiliy
Ладно, встречался с такой проблемой на постгресе.
Vasiliy
Правда с баунсером
Vasiliy
Не мониторил количество коннектов?
Aleksey
нет, надеюсь на ограничение в штатной библиотеке
Pavel
о, ну раз тут ДБшный треп - я правильно понимаю что заранее подготовленный db.Prepare внутрить транзакции запихнуть нельзя?
Mikhail
+1 тоже интересует этот вопрос
Aleksey
внутри транзакции можно создать
Aleksey
подготовленные запросы это на уровне протокола базы
Aleksey
база его в свой внутренний план компилит, а потом по нему принимает только данные и выполняет этот план
Pavel
ну это понятно. но поидее это дополнительные операции... у препереда жеж айдишник, и он вроде как дальше по ид к базе обращается. а тут приходиться заного строги слат, а он их потом парсить будет.... ну даже если из кеша возьмет, то все равно стринг слать в базу....
Aleksey
не просто стринг, а заново базе план выполнения компилить
Aleksey
это время достаточно длительное
Pavel
ну если бд это кеширует (а он кеширует), то просто достанет уже подготовленый план.. но вобщем это не важно. вопрос по препереду заранее...
Pavel
насколько я понимаю это чисто гошное ограничени? или не органичение?
Vasily
Из доки mysql
A prepared statement is specific to the session in which it was created. If you terminate a session without deallocating a previously prepared statement, the server deallocates it automatically.
Сессия - это коннект до базы.
Так что если юзать из многих мест, то можно упереться, там протокол синхронный.
С транзакциями наверное каша вообще будет
Aleksey
Daniel
Daniel
Это ограничение скрытого пула, скорее
Daniel
Нет гарантии, что транзакция и подготовленный запрос окажутся на одном соединении
Leonid
Митап был для сомневающихся. Для тех, кто уже сидит на го - было скучновато.
Повеселила девочка hr, которая просто спрашивала не ищет ли человек работу и давала визитки. Такого я ни разу еще не видел:)
Sebor▂▅▇█▓▒░
Пфф, про hr - тема совсем старая
Leonid
Да не, я не против, она в своем офисе, мы сами пришли, просто раньше не сталкивался.