Крупнейшая профессиональная конференция для разработчиков высоконагруженных систем

Exception Handling: сквозь мультивселенные интероперабельности

Хардкор

Tarantool

Доклад принят в программу конференции

Целевая аудитория

Доклад будет интересен людям, в программном продукте которых важна синергия нескольких рантаймов и удобное бесшовное взаимодействие между ними не только в смысле API, но и в смысле обработки исключительных ситуаций. В эту категорию часто попадают, например, системы со встроенным интерпретатором.

Тезисы

Tarantool -- это платформа для in-memory-вычислений, написанная на C/C++ и Lua. Миры Lua и С/C++ очень тесно связаны: у Tarantool есть модули на Lua, модули на Lua могут использовать модули, написанные на C/C++. В процессе исполнения и в Lua коде, и в C/C++ коде могут возникать исключения, которые иногда необходимо обрабатывать в другой компоненте, может быть написанной на другом языке.

Доклад рассказывает о том, как можно реализовать интероперабельность исключений между двумя языками на примере Lua и C. Разберемся в том, какие есть способы реализации механизма исключений на разных платформах, посмотрим на специфичные для них сложности, а также рассмотрим реализацию интероперабельности на примере LuaJIT, с помощью которого исполняется весь Lua код в Tarantool.

Занимается поддержкой LuaJIT в Tarantool и разработкой инструментария для него. Интересуется компиляторными технологиями и распределенными системами.

VK, Tarantool

Tarantool — это платформа in-memory-вычислений с гибкой схемой данных для эффективного создания высоконагруженных приложений. Включает в себя базу данных и сервер приложений на Lua.

Видео