2010 2011 2012 2013 2014 2015 2016 2017 2018 2019
Генеральный
партнёр


Все на CodeFest X →

Десятый. Юбилейный. 30–31 марта 2019

Почему скриптовые языки едят много ресурсов и как мы это победили в движке Aviasales.ru

Скриптовые языки (python/ruby/perl), в отличие от компилируемых, практически не используют разделяемые библиотки, это приводит в хранению собственной копии библиотек в каждом процессе интерпретатора скрипта. Такое расточительство ещё больше усугубляется если скрипт в процессе работы простаивает ожидая ответа базы данных или внешнего сервиса. По мере роста приложения и нагрузки на него оказывается что для обработки одного запроса необходимо выделить 200-300 MB памяти на 5-10 секунд, при том, что большую часть этого времени скрипт будет ожидать базу и/или ответа внешнего сервера. Отказываться от скриптов не хотелось из-за скорости разработки, поэтому пришлось искать другое решение. Сменив RoR приложение на Python/Tornado мы сначала съели пуд соли, а потом сократили парк машин, обслуживающих Aviasales.ru, в три раза.


Презентация доклада:

 

Запись выступления:

Партнёры