
Сериализация в One-nio. От истоков к поддержке JDK 25 (Unsafe, MagicAccessorImpl,Var/MethodHandles)
Исторически фреймворк one-nio достигал феноменальной скорости сериализации благодаря множеству разных архитектурных трюков, в том числе использованию связки MagicAccessorImpl и Unsafe. Однако развитие Java не стоит на месте, и старые внутренние механизмы постепенно становятся недоступными. В этом докладе мы обсудим адаптацию фреймворка к реалиям современных версий платформы.
Мы разберем практический опыт миграции от MagicAccessorImpl к современным VarHandles и MethodHandles. Вы узнаете, почему мы пока не можем полностью отказаться от Unsafe , как работать с инициализацией final-полей , какие сюрпризы таит сериализация Java Records , и посмотрим на бенчмарки, чтобы выяснить, удалось ли сохранить производительность при смене подкапотной магии. А также заглянем в прошлое и посмотрим на историю возникновения one-nio.