Влад
во всяком случае был
Alexander
а эластик тут вообще каким боком?
Влад
раньше часть данных тупо в ES валялась
Влад
https://blog.timescale.com/blog/what-is-clickhouse-how-does-it-compare-to-postgresql-and-timescaledb-and-how-does-it-perform-for-time-series-data/
Влад
Если не срать 10к insertов в БД, то на том же TSDB просто удобнее жить потому что это полноценный postgres
Влад
В ноябре там ещё завезли обертку над MATERIALIZED_VIEW для распределённых таблиц, стало вообще отлично.
Ivan
func (h *HashMap[K, T]) Put(k K, v T) {
h.m[k] = v
}
Ivan
нравица)
🅞leksiy
Приемлемо просаживается, лучше бы реальные кейсы из жизни, где все уперлось в горм, и пришлось пару запросов переписать на dbq и дальше все летало
🅞leksiy
Боюсь спросить, какие продакшн проекты ты видел)
🅞leksiy
Вполне, видел, и все отлично работало.
🅞leksiy
Мне вот интересно твое представление о сервисах и тп. Типа в твоем понимании, если использовать gorm, сразу нагрузка вместо 0.1% на сервис становится 100%, все падает, потому-что новые инстансы приложения не поднимаются, автоскелинг еще не придумали. И на базу нагрузка в районе 0%, а горм уже лежит?)
🅞leksiy
А 27К на гитхабе ему вообще я накрутил XD
🅞leksiy
Не всё, конечно)
Ilnur
где еще вариант о том, что в этом списке нет orm?
Bagasl
go-pg/bun забыл
Ilnur
либо стандартный sql, либо pgx, но это никак не орм
Hellomik
Да
Ilnur
А есть кто-то кто использует entgo.io? Мне любопытно услышать про проблемы
Hellomik
ХЗ 5 лет не играл
Hellomik
😂😂
Ilnur
ну с учетом февраля генератор может оказаться совсем не актуальным
Ilnur
как и многие другие генераторы
Игорь
Ага
Javokhirbek
Hey guys, I am a python developer but recently I learned Golang as well and now I am wondering which go framework to choose for microservices? Thanks in advance
Vladimir
Goland
Emil
Microservices are more about architecture, I guess
(Gin for ~api)
Vitaliy
🅞leksiy
Javokhirbek
Javokhirbek
Javokhirbek
Javokhirbek
👍Got it, I will do more research
Anonymous
case <- quit как эту строку понять?
🅞leksiy
Го тур
🅞leksiy
Ну реально, любую книгу или руководство по го)
Anonymous
это пример из го) просто одно дело в первом case c <-x значение икса передается каналу с
🅞leksiy
Там тоже получается, но никуда не пишется
Anonymous
а quit как канал куда передает значение? в бездну или?
🅞leksiy
Сработает другая ветка select, в этом его задача
Anonymous
на самом деле это можно было проверить) это получается канал просто освобождает "ячейку" условно говоря
Илхом
两个机器人
Emil
@anupkuplu тут снова спам
Иван
шо за китайцы
Ig
Пишет, что бы мы подчинились и признали власть серебряного дракона небес)
Иван
плюс чашка риса и кошка жена
DI
Добрый день. Есть кто-нибудь кто за регулярки шарит?
DI
Добрый день. Подскажите, в чем проблема. Есть регулярка, оно работает, но если использовать квал. *, но никак не могу ограничить одним пробелом или его отсутствием - при двух и выше регулярка просто ломается
На скрине с одним спейсом
DI
вот сбитая
а сама регулярка
[[:alpha:]]+(\s?\&\w+\=(\w+|"\w+"))*
DI
Мне нужно, чтобы лишние пробелы не матчились между save и &
Ivan
DI
Роман
в курсе по голангу на степике, в теме срезов, рассматривается кейс удаления элемента из среза примерно таким образом.
Я правильно понимаю, что в этой конструкции первый элемент в квадратных скобках это индекс, а второй - не индекс, а индекс + 1?)
DI
DI
Это индекс, но можешь читать как "от 0 до 5"
Роман
Немного контринтуитивно. Интересно, почему сделано именно так, а не от индекса до индекса.
DI
Пажжи. Я ошибся. Сейчас
DI
Ivan
суть в том ,что того элемента уже не будет в слайсе
Bagasl
это удаление через перезапись
Bagasl
поменяется адрес нижележащего массива, на это нам плевать
Bagasl
и то, может быть и не поменяется
Alexander
счетчики например, быстрее чем мьютекс будет и не надо оборачивать. методы там примерно все понятные. если что-то непонятно - спрашивай. разница с мьютексом кроме скорости, что мьютекс очень старается упорядоченный доступ дать, а тут вообще около вызова специальных инструкций процессора
Alexander
атомики даже по сути в ассемблере реализованы:
Alexander
https://go.googlesource.com/go/+/go1.15.6/src/runtime/internal/atomic/asm_amd64.s#69
Bagasl
Bagasl
Если нет - прошу меня поправить, сам не смог нагуглить инфу
Alexander
Anonymous
что именно нужно про атомики? я хорошо шарю, могу помочь. надо понимать для чего используются атомики:
1)чтобы управлять состоянием
2)предотвращать рейс кондитишон(так же должно быть хорошее понимание, что это такое) вкратце две горутины долбят одну переменную
Anonymous
ну это так если по фасту
🅞leksiy
https://ru.m.wikipedia.org/wiki/%D0%90%D1%82%D0%BE%D0%BC%D0%B0%D1%80%D0%BD%D0%B0%D1%8F_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D1%8F
🅞leksiy
Конечно все от железа зависит
Alexander
Ivan
select {
case <-this.ctx.Done():
return
case <-time.Tick(time.Second * 10):
this.do()
}
когда контекст закроется и и функция выйдет из селект, что станет с тикером? он самоудалится?
Bagasl
Bagasl
почитай коммент функции, там всё описано
Alexander
Ivan
видимо так