Задать вопрос
@CteplerMarinovich

Вопрос про многопоточность python, что лучше, больше ОЗУ или больше ядер?

Выбираю хостинг.

У меня есть выбор:
либо 5 гб озу и 1 ядро на 3.3ггц
либо 4 гб озу и 2 ядра на 3.3ггц

Чтобы лучше для телеграм бота на Python? Больше ОЗУ или Больше ядер? Питон многопоточный ?
  • Вопрос задан
  • 154 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
@rPman
На сколько мне известно, популярные библиотеки telegram - асинхронные, т.е. многопоточность в них используется только для реализации асинхронности обработки соединений на уровне питона, а значит вероятность того что твой код упрется в потолок производительности ядер по ним практически нулевая, даже тупой сетевой hello world на питоне оказывается неожиданно очень медленным.

Т.е. скорее всего тебе хватит двух ядер даже в худшем случае.

p.s. оперативная память - это то что любит питон, будет жрать как не в себя, поэтому если это прямо сейчас надо решать - бери больше оперативной памяти

Но правильно - брать больше ресурсов именно в тот момент, когда это действительно нужно, а стартовую оценку нужно брать с тестов своего кода на основе текущего размера своей аудитории и их активности.

p.p.s. тут недавно человек спрашивал про проблемы нагруженного бота (он зачем то удалил вопрос, не помню какая библиотека была), там из-за ошибки в реализации библиотеки на каждое новое сообщение выдавался запрос одного последнего сообщения через тяжелый запрос поиска сообщений от и до (указывался один и тот же id), при этом библиотека была не асинхронная, при большой нагрузке бот отправлял 100500 таких запросов и сервер отказывал в обработке... т.е. первое о чем нужно беспокоиться в нагрузке - это вот такие баги а не нехватка сервера

в нормальной ситуации, даже большое telegram сообщество сможет обработать слабейшая малинка.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Drno
Ядра. В этой ситуации. В крайнем случае swap подключите.
А почему только такой выбор? На хостингах обычно он намного больше)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы