Олег Шелаев
Компания: Oracle
Комментарий Программного комитета:
Издревле JS на сервере запускали на разных VM, но с появлением Node.js запуск не на V8 стал чем-то странным. V8 действительно очень крут, но иногда нам нужно подружить серверный JS с другим окружением, например, с Java для энтерпрайза или с Python для доступа к бесконечному источнику ML-библиотек. Кажется, GraalVM может помочь нам...
GraalVM — это новый рантайм для программ, написанных на разных языках, в т. ч. JS. В него входит Node.js, где V8 заменен его собственным движком JavaScript, написанным на Java 😱.
Возможно, Java и не самый очевидный выбор для реализации движка, но она открывает очень интересные возможности:
В этом докладе мы поговорим о том, как в GraalVM реализована поддержка языков, как с помощью частичных вычислений и новейшего JIT-компилятора GraalVM удается достигать неплохой производительности даже в самых динамических языках. Вы узнаете об особенностях интеграции управляемых событиями сред Node.js с управляемой потоками JVM, о том, как запускать код в безопасной среде, чтобы ограничить его доступ к файловой системе или сети, и о том, как GraalVM работает с нативными расширениями модулей JavaScript.
Из доклада вы узнаете о новой реализации Node.js-рантайма со всеми его плюсами и минусами и поймете, стоит ли попробовать эту реализацию сейчас или продолжить работать с вашим текущим рантаймом.
Компания: Oracle