Size: a a a

2020 March 12

λ

λoλdog in graalvm_ru
лол, ок
источник

OS

Oleg Shelajev in graalvm_ru
лол )
источник

S

Sergey in graalvm_ru
λoλdog
и что ты имеешь ввиду под заточенный?
чтобы не только рантайм был шустрый, но и справлялся с высокими нагрузками (хотя бы на уровне hotspot)
источник

d

def pl = 🦉 in graalvm_ru
Sergey
А еще вопрос,
Может кто-то мог бы подсказать высокопроизводительный веб фреймверк но заточенный под graalVM?
Vert.x
источник

λ

λoλdog in graalvm_ru
Sergey
чтобы не только рантайм был шустрый, но и справлялся с высокими нагрузками (хотя бы на уровне hotspot)
O_O
источник

d

def pl = 🦉 in graalvm_ru
Sergey
А еще вопрос,
Может кто-то мог бы подсказать высокопроизводительный веб фреймверк но заточенный под graalVM?
источник

SE

Sergei Egorov in graalvm_ru
Oleg Shelajev
graalvm native image пожалуйста
весёлый у вас тут бот, шлёт слова непонятные, и ко всем "пожалуйста" добавляет ;D
источник

OS

Oleg Shelajev in graalvm_ru
любой фрэймворк бери и так и будет примерно на уровне хотспот  — GraalVM Enterprise мог бы быть лучше чем хотспот
источник

S

Sergey in graalvm_ru
Oleg Shelajev
любой фрэймворк бери и так и будет примерно на уровне хотспот  — GraalVM Enterprise мог бы быть лучше чем хотспот
Он вроде платный...
а так чтобы запилить mvp и в прод )
источник

OS

Oleg Shelajev in graalvm_ru
или ты хочешь специально сделать native image и что бы он был как хотспот?
источник

S

Sergey in graalvm_ru
Oleg Shelajev
или ты хочешь специально сделать native image и что бы он был как хотспот?
Понятное дело что для извращенских задач нужен хотя бы Rust
источник

OS

Oleg Shelajev in graalvm_ru
Сергей :)
источник

A

Alex in graalvm_ru
Sergey
А еще вопрос,
Может кто-то мог бы подсказать высокопроизводительный веб фреймверк но заточенный под graalVM?
Там же никаких заточек не надо, ты или в сеть упрешься или в скорость твоего кода

netty работает одинаково хоть в хотспот, хоть в граальвм, хоть в нейтив имейдж

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

d

def pl = 🦉 in graalvm_ru
λoλdog
берешь и делаешь этот класс build-time
окей, но когда я делаю их build-time вспылают другие классы из netty:
 io.netty.buffer.AbstractReferenceCountedByteBuf the class was requested to be initialized at build time (from the command line). io.netty.buffer.AbstractReferenceCountedByteBuf has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. Try avoiding to initialize the class that caused initialization of io.netty.buffer.AbstractReferenceCountedByteBuf


Хотя в опциях я передаю --initialize-at-run-time=io.netty.buffer.AbstractReferenceCountedByteBuf,io.netty.buffer.UnpooledHeapByteBuf

Что бы я не делал, я попадаю в какой-то замкнутый круг
источник

λ

λoλdog in graalvm_ru
напиши лучше в конфигах это
источник

d

def pl = 🦉 in graalvm_ru
какая разница в конфигах я это напишу или нет
источник

d

def pl = 🦉 in graalvm_ru
разницы никакой
источник

ВВ

Виктор Вербицкий in graalvm_ru
Ну вообще сборка в native image она такая, да. Фактически тебе придётся обойти весь граф инициализации классов и принять отдельное решение по каждому случаю.
Ну или использовать что-то специально заточенное, вроде того же Quarkus
источник

A

Alex in graalvm_ru
В котором парни вагон всего делают за тебя :)
источник

ВВ

Виктор Вербицкий in graalvm_ru
def pl = 🦉
окей, но когда я делаю их build-time вспылают другие классы из netty:
 io.netty.buffer.AbstractReferenceCountedByteBuf the class was requested to be initialized at build time (from the command line). io.netty.buffer.AbstractReferenceCountedByteBuf has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. Try avoiding to initialize the class that caused initialization of io.netty.buffer.AbstractReferenceCountedByteBuf


Хотя в опциях я передаю --initialize-at-run-time=io.netty.buffer.AbstractReferenceCountedByteBuf,io.netty.buffer.UnpooledHeapByteBuf

Что бы я не делал, я попадаю в какой-то замкнутый круг
Конкретно тут у тебя скорее всего какой-то другой класс инициализируется и по зависимости тянет этот.
источник