Представлен проект Presto, в рамках которого развивается новый фреймворк для разработки web-приложений на языке Ruby. Код проекта распространяется под лицензией BSD.
Ключевые особенности:
- Высокая скорость обработки запросов;
- Встроенный модуль аутентификации (basic, digest, html);
- Встроенная поддержка кэширования;
- Встроенный компилер для темплэйтов;
- Возможность ограничения доступа к функциям API redirect, halt, pass, session, cookies, env на уровне фреймворка. Например, можно запретить людям, имеющим право редактирования шаблонов, читать содержимое сессий, cookie и переменных окружения;
- Сессии и cookie могут быть переведены в режим только для чтения;
- Предельная простота разработки (три класса http, view и node).
Presto разрабатывался как тонкий враппер вокруг Rack. Тонкость в том, чтобы добавить утилиты не добавив при этом значительных накладных расходов. На данном этапе, Presto добавляет около 30% накладных расходов. Тесты производительности показывают, что когда Rack обрабатывает 6000 запросов в секунду, Presto с легкостью обрабатывает 4000 запросов в секунду. Последние 3 месяца Presto упорно тестировался, устанавливался и работал бесперебойно на различных сайтах.