Чем нам запомнилась последняя JokerConf

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
На прошлой неделе в Санкт-Петербурге прошла международная Java-конференция Joker. Мы попросили наших ребят, которые её посетили, рассказать немного об организации и самых интересных, по их мнению, выступлениях. Кто-то отметил самые хайповые и весёлые, кто-то — самые актуальные и полезные. Впрочем, читайте об этом «из первых рук».



В этом году было заметно больше посетителей и стендов спонсоров, что привело к незначительным «пробкам» в коридорах, зоне выставки и на обедах.

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

А теперь о самих докладах и том, зачем вообще ездить на конференции.



Андрей Громов rjhdby,
бэкенд-разработчик FunCorp


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

С этой точки зрения Jocker 2019 прошёл для меня под знаком JNI и внутренностей виртуальной машины.

Наибольший интерес вызвали три доклада, не считая Баруха, который и про бухгалтерскую отчётность палатки с шаурмой сможет рассказать так, что не оторвёшься.

  • Cliff Click. The Sea of Nodes and the HotSpot JIT

Замечательный доклад про внутреннюю кухню HotSpot C2 JIT от человека, который в этом действительно понимает лучше почти всех.

Вряд ли эти знания скажутся на моей работе, но полстраницы в блокноте пополнились записями с пометками «почитать» и «подход можно применить в XXX», что круто.

  • Ionut Balosin. A race of two compilers: GraalVM JIT versus HotSpot JIT C2 

Йонутс рассказал о некоторых ключевых различиях в реализации этих двух компиляторов и их влиянии на производительность в определённых типах задач. На первый взгляд кажется, что доклад простенький: ну что там, взял да померил, но это только на первый взгляд, пока не углубишься в детали расказанного и показанного. И вот тогда приходит понимание объёма работы, проделанного докладчиком для того, чтобы показать нам эти «простые графики».

  • Дмитрий Писклов. Микросервисы, отвечающие за несколько микросекунд — друзья и враги

Кровь, кишки — всё как я люблю. Этот человек научит вас неправильно делать неправильные, но космически быстрые микросервисы. Подозреваю, что после этого доклада пришлось заменить немало стульев с прогоревшей обивкой.
Тут и про unsafe, и про mmap, и про тюнинг параметров ядра, и про свой сетевой стек, и про всё остальное под девизом «перфоманс во главе угла»!

Евгений Захаров nerumb,
бэкенд-разработчик FunCorp

  • Сергей Куксенко. Нужны ли в Java «инлайн»-типы? Узкий взгляд инженера по производительности на проект Valhalla

Интересный доклад от инженера из Oracle, который поделился внутренними подробности работы над Valhalla. У меня были вопросы, почему же так долго Valhalla не приходит в Java, и как раз этот доклад ответил на многие из них.

Value-типы не так просто реализовать в Java, и приходится экономить буквально на единицах «байтов». Сергей рассказал о некоторых ухищрениях, на которые им пришлось пойти, чтобы не изменять структуру хранения объектов в Java и поместить в них всю нужную информацию. И особенно удивительным было то, что Valhalla не только делает Java быстрее, но есть и негативные последствия. C Value-типами приходится усложнять существующий код, и для некоторых ситуаций получается небольшая деградация по производительности (хотя, по словам Сергея, на текущий момент это не более 10% в самых негативных сценариях). Но над этим ещё идёт активная работа и надеемся, что команде Oracle удастся оптимизировать негативные сценарии и наконец воплотить Valhalla в Java.

В качестве бонуса Сергей просил всех неравнодушных попробовать Valhalla (она скоро станет доступна в OpenJDK-сборке при включении флага) и проверить на своих сценариях её работу. Крайне желательно сообщить команде разработке о сильных деградациях по прозводительности, если таковые обнаружатся.

  • Тагир Валеев. Java 9-14: Маленькие оптимизации

Как всегда, интересный доклад от не нуждающегося в представлении Тагира. Было много интересного о внутренних улучшениях, которые просто становятся доступны с обновлением на новую версию Java. Тагир привёл много примеров, среди которых наиболее запомнился abs, который, казалось бы, и оптимизировать уже дальше некуда, т.к. сама реализация метода состояла всего из одной строчки кода. Но и этот метод удалось сделать быстрее сделав его intrinsic-методом. Было много и других примеров, когда простой переход на следующую версию Java повышает скорость, иногда даже на несколько порядков, как с тем же hypot. Советую обязательно посмотреть запись доклада, тем кто ещё не видел.

Олег Золотарёв OlegXxl,
бэкенд-разработчик FunCorp

  • Juergen Hoeller & Josh Long. Reactive Spring revisited

Джош «отжигал» всё выступление, при этом сам доклад очень хорошо повествует о Reactive буквально во всех его проявлениях в последней версии Spring. В том числе рассказали и про интеграцию с RSocket (а вы знали, что впервые у spring starter в стабильной версии используется нестабильная зависимость?). Конечно, эту информацию можно почерпнуть и из официальных мануалов, но здесь она была из первых уст и в агрегированном виде.



  • Барух Садогурский. DevOps для разработчиков (или против них?!)

Барух срывал покровы на закрывающем кейноуте первого дня, и у него получилось достаточно хорошо! Из этого доклада вы узнаете, как и из чего появилась идеология DevOps, кто единственный реализует её «интерфейс». Интересно было послушать про то, что на самом деле есть «лучший код» (его DoD), и о том, что общего у software craftsmanship и DevOps.

К некоторому сожалению, закрывающий кейноут второго дня не был таким «воспламеняющим», как в прошлом году, когда выступал доктор Курпатов, и обсуждение этого выступления в чатах проходило ещё целый месяц.

Впрочем, на конференцию мы ездим не за этим, а по всем остальным параметрам она удалась.

Большое спасибо всем организаторам и докладчикам! До новых встреч на следующих конференциях!
Источник: https://habr.com/ru/company/funcorp/blog/473854/


Интересные статьи

Интересные статьи

Нередко при работе с Bitrix24 REST API возникает необходимость быстро получить содержимое определенных полей всех элементов какого-то списка (например, лидов). Традиционн...
История сегодня пойдёт про автосервис в Москве и его продвижении в течении 8 месяцев. Первое знакомство было ещё пару лет назад при странных обстоятельствах. Пришёл автосервис за заявками,...
Если вы последние лет десять следите за обновлениями «коробочной версии» Битрикса (не 24), то давно уже заметили, что обновляется только модуль магазина и его окружение. Все остальные модули как ...
Одной из «киллер-фич» 12й версии Битрикса была объявлена возможность отдавать статические файлы из CDN, тем самым увеличивая скорость работы сайта. Попробуем оценить практический выигрыш от использова...
Практически все коммерческие интернет-ресурсы создаются на уникальных платформах соответствующего типа. Среди них наибольшее распространение получил Битрикс24.