Size: a a a

2020 July 23

Н

Никита in Go-go!
Спасибо
источник

zl

ziggy lucid in Go-go!
подскажите, может встречал кто подобное
нужен гошный email-сервер только на прием почты и с возможностью доступа к полученным письмам
понятно, что можно через внешние протоколы работать, но с pop3 неудобно - хоть и просто, но фильтрации нет, а с imap - там сам черт ногу сломит, нет желания лезть в дебри ради простой задачи получения писем
источник

АУ

Артем Уткин... in Go-go!
Прошу прощения за нубский вопрос
Не могу никак понять, как перевести в апперкейс кириллицу?

Проверяю на букве "ё", обычный strings.ToUpper() ее просто выкидывает
Функция strings.ToUpperSpecial() как будто не воспринимает кириллицу в принципе
Или придется просто по массиву рун итерировать?
источник

S

Sergey in Go-go!
Артем Уткин
Прошу прощения за нубский вопрос
Не могу никак понять, как перевести в апперкейс кириллицу?

Проверяю на букве "ё", обычный strings.ToUpper() ее просто выкидывает
Функция strings.ToUpperSpecial() как будто не воспринимает кириллицу в принципе
Или придется просто по массиву рун итерировать?
Ты чё-то не то делаешь, всё работает https://play.golang.org/p/WF5nxwdS3uZ
источник

АУ

Артем Уткин... in Go-go!
Земля мне пухом, я просто в регулярке до этого ё обрезал
источник

EG

Evgeny Glyshko in Go-go!
Спасибо большое, это сработало)
источник

@

@mr_tron in Go-go!
Daniel Podolsky
да у меня тоже есть кеши 🙂

но я использую LRU
а чё? lru cache не надо инвалидировать?
источник

ВС

Владимир Столяров... in Go-go!
за lru не скажу, а вот ttl инвалидируется сам, но не сразу
источник

@

@mr_tron in Go-go!
угу. и то это проблема. а вот в lru какая-нибудь популярная запись может болтаться вечно
источник

DP

Daniel Podolsky in Go-go!
@mr_tron
а чё? lru cache не надо инвалидировать?
дело не в lru, а в данных, которые туда попадают. их инвалидировать не надо
источник

@

@mr_tron in Go-go!
а. ну так бы и сказал что "у меня кэши которые нет необходимости инвалидировать"
источник

S

Sergey in Go-go!
@mr_tron
а. ну так бы и сказал что "у меня кэши которые нет необходимости инвалидировать"
потому что не инвалидировать надо, а обновлять сразу после записи в базу.
источник

@

@mr_tron in Go-go!
мммм. и как вы предлагаете гарантировать, что после записи в базу произойдёт запись в кэш?
источник

S

Sergey in Go-go!
не говнокодя. поделись идеей, что надо сделать, чтобы не прошла запись в мапу или слайс?
источник

p

pragus in Go-go!
Je
сам придумал? как раз в го не самая лушая реализация мапы для кэша, от банального не  thread safety, до нагрузки на GC
и когда у нас есть десяток решений со своими нюансами типа https://github.com/allegro/bigcache
может быть не такой уж и моветон заюзать уже масштабируемое решение redis?) особенно если инстансов больше одного
> от банального не  thread safety

вот отсутствие thread safety - это как раз самый большой плюс.
источник

J

Je in Go-go!
большой плюс?)
источник

p

pragus in Go-go!
Мимо Проходящий
"Нагрузка на гц" - это выдумки, либо говнокод. Ни разу не сталкивался с кейсом чтобы гц был узким местом. Потокобезопасная мапа тоже есть, учите матчасть. Вот только она не нужна
у вас просто маленькая мапа :)
источник

p

pragus in Go-go!
Je
большой плюс?)
да. клиентский код лучше знает в какие моменты надо синхронизировать доступ.
источник

J

Je in Go-go!
и хорошо, если он это делает) что-то почти все реализации cache в памяти так или иначе thread safe делают, не полагаясь на клиентский код
источник

J

Je in Go-go!
но мне что-то не совсем понятно, как вы доступ к мапе собрались в клиентском коде синхронизировать, это ж мапа без обвязок
источник