TGStat
TGStat
Type to search
Advanced channel search
  • flag English
    Site language
    flag Russian flag English flag Uzbek
  • Sign In
  • Catalog
    Channels and groups catalog Search for channels
    Add a channel/group
  • Ratings
    Rating of channels Rating of groups Posts rating
    Ratings of brands and people
  • Analytics
  • Search by posts
  • Telegram monitoring
IT links

25 Jun, 23:37

Open in Telegram Share Report

Forward from: Юрий Аверичев
Собес в Сбер:
Как параллельно выполнять задачи? Какой из них для какого класса задач сделан?
Ты говоришь, что потоки и асинхронность для IO-bound-задач, а можем мы все-таки как-то на потоках CPU-шку считать?
Есть 1000 процессов. Математика, складываем, умножаем. Есть тысяча первый процесс, главный, он эти таски плодит, рассовывает им данные, чтобы они считали. В такой архитектуре какие ты видишь подводные камни, которые могут бить по производительности?
Можем для простоты сравнить приложение на тысячу потоков и на тысячу процессов.
А какие у нас будут проблемы с передачей данных между главным процессом и воркерами?
Можем, например, произвольный объект туда отправить, какой-нибудь объект класса, модель из SQLalchemy, можем кинуть в другой дочерний процесс, чтобы он почитал атрибуты оттуда.
Можешь рассказать про словарик, как он внутри устроен, под капотом, и как решает коллизии?
А когда еще у нас вставка в словарик может стремиться к О(М)? Ну вот коллизий не происходит, но все равно вставка за О(М).
А вот в целом словарь, если с точки зрения памяти это непрерывная область или все-таки она может фрагментирована в памяти храниться?
Зачем нам в целом нужен генератор и как мы можем по виду функции понять, что вот это генератор?
Повлиять на созданный генератор, например, на генератор, который числа выдает, мы его сделали, пару раз next дернули, что-то получили, потом хотим сделать так, чтобы он переключил алгоритм на другой, по-другому начал формировать числа. Можем мы как-то уже с созданным генератором что-то сделать?
Можешь рассказать в целом про магические методы? Есть у класса магические методы New и Init. В чем они различаются?
Полгода нормально работало приложение, все с ним было хорошо, тут выкатили очередной релиз, и после релиза смотрим на метрики, там ЦПУ улетел в полку, там условно 20 ядер, например, на сервере, и он туда в двадцатку и улетел. На что будешь в первую очередь смотреть, как фиксить проблему?
Какие у нас есть индексы и зачем они нужны?
Как нам поможет индекс для операций записи на какой-нибудь таблице размером миллион строк?
Тогда для операции чтения, как понять, что есть смысл на колонку накидывать, что он даст какой-то прирост?
Представим таблицу, там фамилия, имя и город в России, где человек живет. Если у нас, например, Москва, Питер, Казань, еще 5 городов, есть смысл накидывать индекс? И если есть, то в каких случаях?
Если у нас есть тестовый стенд с подмножеством данных из PROD, можем ли мы сказать, что мы сделаем ExPlane Analyze на тестовой базе, перенесем на PROD и выводы сделанные на основе этого EXPlane будут валидны?
Можешь что-то про автовакуум рассказать, зачем он нужен?

1 0 0
Catalog
Channels and groups catalog Channels compilations Search for channels Add a channel/group
Ratings
Rating of Telegram channels Rating of Telegram groups Posts rating Ratings of brands and people
API
API statistics Search API of posts API Callback
Our channels
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Read
Академия TGStat Telegram Research 2019 Telegram Research 2021 Telegram Research 2023
Contacts
Справочный центр Support Email Jobs
Miscellaneous
Terms and conditions Privacy policy Public offer
Our bots
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot