Size: a a a

2020 September 02

A

Alexander in ctodailychat
Сергей Аксёнов
Зачем менять то, что работает?
Оно работает уже давно не так как было создано работать. Тема для широкой дискуссии на самом деле. Но имея опыт борьбы с непробиваемыми поддержками спамфильтров...
источник

СА

Сергей Аксёнов... in ctodailychat
Mike
А зачем раз в час?
У юзера ж известна таймзона, отсекать 30 дней раз в сутки для каждого пояса, уже не 10М юзеров получится, хоть и не равномерно
Ну можно и раз в сутки, цена ошибки повыше получается, но не критично.
источник

СА

Сергей Аксёнов... in ctodailychat
Alexander
Оно работает уже давно не так как было создано работать. Тема для широкой дискуссии на самом деле. Но имея опыт борьбы с непробиваемыми поддержками спамфильтров...
Проблема только в спаме, или ещё что-то работает "не так"?
источник

AP

Alexander Panko in ctodailychat
Сергей Аксёнов
А как удалять пометки старше 30 дней?
вариантов много, они зависят от стореджа, например с redis как вариант под один бакет на сутки для одного юзера сразу выставлять expiration у ключа в 30 дней, он удалится автоматически
источник

A

Alexander in ctodailychat
Сергей Аксёнов
Проблема только в спаме, или ещё что-то работает "не так"?
Да по количеству костылей, с которыми сталкиваешься работая с почтой. Все не так. Начиная с прайваси заканчивая инжектом рекламы
источник

IV

Igor V in ctodailychat
Сергей Аксёнов
Делать отдельный garbage collector, который будет раз в час пробегать по всем 10 млн юзеров?
Я бы делал два storage - один для аналитики со своими правилами data retention и второй для юзера, чтобы показывать им историю. Тогда было бы достаточно раз в сутки делать батчами delete from history where expiration_dt <= curdate.
источник

СА

Сергей Аксёнов... in ctodailychat
Igor V
Я бы делал два storage - один для аналитики со своими правилами data retention и второй для юзера, чтобы показывать им историю. Тогда было бы достаточно раз в сутки делать батчами delete from history where expiration_dt <= curdate.
Это уже так и есть, само собой. Но аналитический сторадж - это дорога в одну сторону, делать туда запросы с прода лучше даже не пытаться.
источник

IV

Igor V in ctodailychat
Никто и не предлагает
источник

СА

Сергей Аксёнов... in ctodailychat
Alexander Panko
вариантов много, они зависят от стореджа, например с redis как вариант под один бакет на сутки для одного юзера сразу выставлять expiration у ключа в 30 дней, он удалится автоматически
М, красиво, но вместо одного запроса нужно делать 30 для получения полной истории. А с учётом шардинга - их даже не собрать в getMany.
источник

AP

Alexander Panko in ctodailychat
Сергей Аксёнов
М, красиво, но вместо одного запроса нужно делать 30 для получения полной истории. А с учётом шардинга - их даже не собрать в getMany.
шардиннг конечно по юзеру, поэтому собрать, доставать не проблема, даже если логика в этом месте не прямолинейная ее можно заимплементить как lua функции исполняющиеся прямо рядом с данными в redis
источник

СА

Сергей Аксёнов... in ctodailychat
Alexander Panko
шардиннг конечно по юзеру, поэтому собрать, доставать не проблема, даже если логика в этом месте не прямолинейная ее можно заимплементить как lua функции исполняющиеся прямо рядом с данными в redis
Если ключ будет user_id+date, то они разлетятся по разным шардам.
источник

AP

Alexander Panko in ctodailychat
Сергей Аксёнов
Если ключ будет user_id+date, то они разлетятся по разным шардам.
имхо это оверхед, да, просто по user id будет не очень uniform распределение, но что то мне подсказывает что при вашем dau это абсолютно не проблема которую стоит решать
источник

AR

Anton Revyako in ctodailychat
Обязанности:
• Писать код на Java
• Чинить принтер
источник

AP

Alexander Panko in ctodailychat
Igor V
Здесь даже binary search не нужен. Тупо смотреть разницу между двумя сетами.
не очень понял, тут же один из сетов очень большой, как именно смотреть разницу?
источник

VF

Vadim Fedosov in ctodailychat
Alexander
Да по количеству костылей, с которыми сталкиваешься работая с почтой. Все не так. Начиная с прайваси заканчивая инжектом рекламы
Тем не менее, имейл — технология, которая работает, при этом максимально распределена и практически не подвержена вендор-локу
источник

VF

Vadim Fedosov in ctodailychat
В отличие от всяких новомодных решений, типа проприетарных мессенджеров от корпораций добра и прочих ни разу не шпионских компаний
источник

A

Alexander in ctodailychat
Vadim Fedosov
Тем не менее, имейл — технология, которая работает, при этом максимально распределена и практически не подвержена вендор-локу
ну смотря что называть вендор-локом. Вот у меня была пользовательская база на одном проекте и почта, прости господи, на мэйл ру начала рубить наши письма. А таких было процентов 30 если не больше. Чем не вендор лок.
источник

A

Alexander in ctodailychat
Итого проблемы:
1. Self hosted решения стали непосильной ношей.
2. Связка user+host стала скорее рудиментом.
3. Пользователи не могут влиять на политику фильтрации и администрирования своей почты.
4. Отправка почты стала наравне с алхимией.
5. Вместо двух сторон в отсылке писем теперь посередине 3-5 компаний (кто отправляет, кто принимает, кто агрегирует как минимум).
6. От даже налета privacy не осталось и следа.
источник

VF

Vadim Fedosov in ctodailychat
Alexander
ну смотря что называть вендор-локом. Вот у меня была пользовательская база на одном проекте и почта, прости господи, на мэйл ру начала рубить наши письма. А таких было процентов 30 если не больше. Чем не вендор лок.
Пользователь почты мейл.ру может в любой момент забрать архив своих писем и перехать к другому провайдеру/настроить свой сервер
источник

A

Alexander in ctodailychat
Vadim Fedosov
Пользователь почты мейл.ру может в любой момент забрать архив своих писем и перехать к другому провайдеру/настроить свой сервер
боюсь пользователь с почтой на мэйл.ру останется на ней до конца своих (или её) дней. И более того, у меня нет способа сообщить ему что я не могу с ним связаться 🙂 потому что вот.
источник