Python и Ruby под нагрузкой: самый низкий уровень Архитектуры, масштабируемость
Когда пропадает простой способ масштабировать сервис под нагрузкой — появляется хайлоад. Но случается такое не сразу, не у всех и не всегда. Многие сервисы годами работают на "нехайлоадных" PHP, Python и Ruby, обрабатывая тысячи веб-запросов в секунду и не чувствуя необходимости писать свой компилятор PHP или переходить на Go с Rust.
В докладе я расскажу о том, когда именно наступает переломный момент для Python и Ruby, двух "хипстерско-хайповых" стеков, первый из которых нам регулярно приносят дейта-сайентисты, а второй все никак не может умереть и время от времени демонстрирует проекты вроде "hey.com".
Взяв за основу "типовые" Python- и Ruby-проекты, как их модно делать в 2020 году, я покажу, что именно происходит после nginx, как современные application-сервера для этих языков взаимодействуют с виртуальными машинами, что дают и отнимают веб-фреймворки и чем это все отличается по скорости от "си-шного" хайлоада, способного выдавать сотни тысяч запросов в секунду. Python и Ruby действительно медленные и с GIL, но при правильном использовании это не проблема, а статья расходов — и я расскажу, что мы можем получить за эти деньги.
Карьеру специалиста по созданию программ начал в конце 90-х: сначала как разработчик, затем как руководитель разработки. Участвовал в создании Radmin и Advanced IP Scanner, продвигал интерактивное телевидение NPTV и программируемую телефонию Voximplant. Генералист, нейрофизиолог-любитель, организует разработку, конференции, хакатоны. Сейчас — Head of Developer Relations в Evrone.