Forwarded from > json1fy
Библиотека Telethon обречена на смерть
Пока в Pyrogram давно работало нормально определение типа диалога (скрин 1), супергрупп/чатов/пользователей, в телетоне ты должен был дрочить isinstance(entity, User), isinstance(entity, Channel), entity.is_broadcast, ...
Пока в Pyrogram нормально отображалось количество участников чата (скрин 3), телетон просто выдает None (скрин 2), и приходится костылить через GetParticipantsRequest
Telethon до сих пор страдает от багов, существующих как минимум 3 года (может с нихуя крашнуться, зависнуть, заблокировать весь скрипт до перезапуска вручную, начать дико срать в логи, начать бесконечные реконнекты 100 раз в сек и забивать память, пока OOM killer не хуйнет это говно), Лонами (разработчик Telethon) токсичный хуесос, когда ему указываешь на баги, он злится, когда кидаешь PR с исправлением - тоже злится и не принимает
Хотя в целом, если посмотреть, все Python MTProto-библиотеки обречены на смерть, Pyrogram заброшен, Telethon не развивается, хотя Pyrogram хоть немного остается на плаву благодаря форкам
Пока в Pyrogram давно работало нормально определение типа диалога (скрин 1), супергрупп/чатов/пользователей, в телетоне ты должен был дрочить isinstance(entity, User), isinstance(entity, Channel), entity.is_broadcast, ...
Пока в Pyrogram нормально отображалось количество участников чата (скрин 3), телетон просто выдает None (скрин 2), и приходится костылить через GetParticipantsRequest
Telethon до сих пор страдает от багов, существующих как минимум 3 года (может с нихуя крашнуться, зависнуть, заблокировать весь скрипт до перезапуска вручную, начать дико срать в логи, начать бесконечные реконнекты 100 раз в сек и забивать память, пока OOM killer не хуйнет это говно), Лонами (разработчик Telethon) токсичный хуесос, когда ему указываешь на баги, он злится, когда кидаешь PR с исправлением - тоже злится и не принимает
Хотя в целом, если посмотреть, все Python MTProto-библиотеки обречены на смерть, Pyrogram заброшен, Telethon не развивается, хотя Pyrogram хоть немного остается на плаву благодаря форкам
❤8👍3👏1
@json1c // devlog
В своей работе я постоянно подключаюсь к большому количеству серверов, и чтобы каждый раз не вспоминать IP, есть очень удобная утилита ggh Скрипт парсит сервера из .ssh/config, либо сам их запоминает, если подключаться через ggh user@ip
Нашёл для себя утилиту LazySSH — эта оказалась ещё удобнее, чем ggh. Интерфейс тоже приятнее и функциональнее.
Почему не Termius? Причины есть:
1. Нативный терминал Linux. Мне куда приятнее работать в нормальном терминале Linux, чем в откровенно плохом терминале от Termius.
2. Скорость. Для меня важна скорость работы, с LazySSH можно за секунду открыть терминал, нажать стрелочку и Enter и подключиться к серверу.
3. Цена. Termius — платный. LazySSH — бесплатный и с открытым исходным кодом.
Почему не Termius? Причины есть:
1. Нативный терминал Linux. Мне куда приятнее работать в нормальном терминале Linux, чем в откровенно плохом терминале от Termius.
2. Скорость. Для меня важна скорость работы, с LazySSH можно за секунду открыть терминал, нажать стрелочку и Enter и подключиться к серверу.
3. Цена. Termius — платный. LazySSH — бесплатный и с открытым исходным кодом.
🔥5❤3👍2
Антискам система эволюционирует - я сделал проверку не только по базе ботов, а еще и по базе GID.
Также я запретил сейвмоду работать, если пользователь дал разрешение на подарки. Это было сделано для защиты от пользовательских скам-зеркал.
Также я запретил сейвмоду работать, если пользователь дал разрешение на подарки. Это было сделано для защиты от пользовательских скам-зеркал.
🔥8❤5🥰3
Пиковая нагрузка в Savemod за сутки составила 636 RPS (запросов в секунду).
И уже давно средняя нагрузка перетекла из 200 RPS в 600 RPS.
Где те люди, которые в июне говорили, что я что-то неправильно сделал? Не думаю, что ебаться с инстансами или постоянным апгрейдом серверов проще, чем один раз написать микросервис за 3 часа
И уже давно средняя нагрузка перетекла из 200 RPS в 600 RPS.
Где те люди, которые в июне говорили, что я что-то неправильно сделал? Не думаю, что ебаться с инстансами или постоянным апгрейдом серверов проще, чем один раз написать микросервис за 3 часа
👍6🔥4❤2
@json1c // devlog
Тем временем у @savemod уже 110 тысяч пользователей — за 3 месяца моей работы в проекте
Спустя еще 4 месяца Savemod пробивает планку в 400 тысяч пользователей. Что мы сделали за это время?
Была ускорена обработка сообщений и переработаны места, которые раньше упирались в нагрузку, чтобы рост аудитории не превращался в рост проблем. Отдельно привели в порядок внутренние процессы, из-за которых раньше могли возникать проблемы на пике, и устранили несколько старых, давно раздражающих багов.
Параллельно добавили и доработали ряд функций, которые пользователи чаще всего просили в чате и поддержке, сделав использование Savemod проще и понятнее. В итоге проект не просто вырос по цифрам, а стал заметно стабильнее и удобнее.
Была ускорена обработка сообщений и переработаны места, которые раньше упирались в нагрузку, чтобы рост аудитории не превращался в рост проблем. Отдельно привели в порядок внутренние процессы, из-за которых раньше могли возникать проблемы на пике, и устранили несколько старых, давно раздражающих багов.
Параллельно добавили и доработали ряд функций, которые пользователи чаще всего просили в чате и поддержке, сделав использование Savemod проще и понятнее. В итоге проект не просто вырос по цифрам, а стал заметно стабильнее и удобнее.
❤4👍2