company_banner

Spring, байткод, JDK: топ-10 докладов JBreak 2018



    Хабр, привет! Раньше мы проводили в Новосибирске Java-конференцию JBreak. В 2019-м решили её не проводить, но от этого доклады JBreak 2018 не перестают быть полезными, так что традиционно делимся подборкой лучших (по мнению зрителей). Тем более, что многие попавшие в эту подборку спикеры скоро приедут с новыми докладами в Москву на JPoint — можно как раз «заочно познакомиться» с ними и понять, хочется ли на московскую конференцию.

    Как обычно, доклады идут от «младшего» к «старшему» по рейтингу, но отличия между местами небольшие — так что лучше не сравнивать придирчиво места, а смотреть всё по интересующим темам!

    Под катом видео разбиты с оглавлением по содержимому поста, презентациями и короткими описаниями.
    А для тех, кому недостаточно лучших 10 докладов и нужны все-все, у нас есть отдельный плейлист.

    Class data sharing in the HotSpot VM


    Спикер: Volker Simonis
    Место: 10
    Рейтинг: 3,96
    Презентация доклада



    Наша подборка начинается с подробного доклада о Class Data Sharing — фиче, предназначенной для улучшения скорости загрузки и уменьшения количества используемой оперативной памяти. Появилась она ещё в Java 5, но в последние годы история получила развитие, и в OpenJDK 10 возникло дополнение в виде AppCDS. Фолькер сначала коротко представляет CDS и AppCDS, объясняя, что это вообще и зачем нужно — а затем ныряет глубже.

    По словам слушателей, это пример «образцово выполненной рабочей задачи» — Фолькер заглянул в исходники JDK, разложил по полочкам способ достижения результата и подводные камни, показал конкретные цифры по использованию RAM и скорости работы и расписал всё так, что вы поймёте, стоит ли использовать эту технологию для своих приложений.



    Строим криптотрейдинг-платформу, используя Spring 5 и Reactor 3


    Спикер: Олег Докука
    Место: 9
    Рейтинг: 4,02
    Презентация доклада



    Нет, здесь не будет механизма работы блокчейна, секретов быстрого обогащения на криптовалюте и тому подобного. Зато будет то, что нужно для лучшего понимания Spring 5 и Reactor 3: опытный докладчик, подготовленная речь и презентация, демонстрация современной технологии и практический пример (в виде той самой простой криптотрейдинг-платформы).

    Подход к докладу максимально доступный: Олег задает базовые вопросы: «Что нужно?», «Зачем это нужно?», «Как это реализовать?» раскладывает по полочкам каждый ответ. К примеру, он подробно и просто разъясняет, как построить Reactive System, используя Spring Reactive Stack, зачем это нужно бизнесу, где Reactive-подход работает лучше всего и оптимально решает сложные задачи.

    На протяжении всего доклада Олег разбирается, как Reactor 3 и реактивный Spring 5 помогают или не помогают в решении проблем, что нового они дают.

    На пути к быстрой многопоточной хеш-таблице


    Спикер: Никита Коваль
    Место: 8
    Рейтинг: 4,04
    Презентация доклада



    Хеш-таблицы — популярнейшая и полезная структура данных, от производительности которой зависят многие компоненты приложения. А ещё производительность зависит от многопоточности. Что в Java с хэш-таблицами, которые использовали бы все возможности современного многоядерного мира?

    Никита Коваль (ndkoval) видит тему многопоточности и с теоретической стороны (преподавая её в ИТМО), и с практической (он причастен к корутинам в Kotlin). Неудивительно, что и доклад получился всесторонним: в нём есть и теоретические аспекты, и практические подходы.



    Side Effect Injection, или добродетельные костыли


    Спикер: Владимир Плизга
    Место: 7
    Рейтинг: 4,11
    Презентация доклада



    У вас бывали случаи, когда случайно (или нет) отправляли на продакшн кусок кода, предназначенный для теста? Или вставляли временный if, к примеру, с Thread.sleep() или логированием для отладки? Вы не одиноки: есть множество реальных примеров, когда на продакшн частенько уезжает тестовый/отладочный код, превращаясь там в бомбу замедленного действия, попутно преумножая технический долг и увеличивая пятно на карме разработчика.

    В докладе Владимир по косточкам разбирает подход Side Effect Injection, который позволит внедрять в тестируемое приложение почти любое поведение: задержки, заглушки, логирование, обход безопасности и т.д., но при этом не пачкать репозиторий грязными хаками и даже не пересобирать само приложение. Таких костылей вы еще не видели :)



    Верификация Java-байткода: когда, как, а может отключить?


    Спикер: Никита Липский
    Место: 6
    Рейтинг: 4,13
    Презентация доклада



    Чтобы реализовать те или иные трюки, которые сложно выразить на Java, разработчики используют библиотеки для порождения байткода в рантайме. Но нужно очень строго следить за корректностью байткода, иначе при загрузке классов всплывет VerifyError. И что делать в такой ситуации?

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

    Как и в пункте выше про другого Никиту (Коваля), тут спикеру очень помогает его бэкграунд. Для понимания байткода полезно работать на уровень ниже «обычных» Java-разработчиков, а Никита Липский (pjBooms) много лет занимается «сибирской JVM» Excelsior JET, о которой мы недавно взяли у него большое интервью.




    Балансируем клиентские запросы вместе со Spring Cloud


    Спикер: Александр Тарасов
    Место: 5
    Рейтинг: 4,14
    Презентация доклада



    Очень «живой» доклад в смысле лайв-демонстрации всего, о чём говорится. Александр пробегается по теории Spring Cloud, а затем ныряет в разбор типового решения проблемы — и тогда вместо сатичных слайдов на экране постоянно видны то IDE с кодом, то браузер с графиками от Hystrix.
    По ходу демо будет рассмотрена внутренняя реализация клиентской балансировки запросов с примерами из официальных библиотек и собственной библиотеки автора. Вы узнаете как балансировать нагрузку, и на примере увидите, почему даже даже весьма незначительное увеличение нагрузки может привести к катастрофическим последствиям, и как этого можно избежать.



    Spring Boot Starter — как и зачем?


    Спикер: Максим Гореликов / Кирилл Толкачев (tolkkv)
    Место: 4
    Рейтинг: 4,16
    Презентация доклада



    Spring — уже не магия (спасибо «Spring-потрошителю» и Евгению Борисову), а вот Spring Boot довольно часто клеймят магической поделкой. Но многим нравится, особенно новичкам!
    Парный доклад о том, зачем вообще в рамках типовой компании, использующей Spring Boot, могут понадобиться собственные стартеры; как скоро инквизиция приходит за новичками, если они бездумно используют готовые стартеры и насколько Spring Boot самостоятелен и что это значит для разработчиков.

    Доклад рассчитан на практикующих Spring (а лучше Spring Boot) инженеров, которые уже сталкивались с различными трудностями поддержки увесистой инфраструктуры, разрабатываемой с использованием Spring.



    Это кто там такой твитит про #jbreak?


    Спикер: Виктор Гамов
    Место: 3
    Рейтинг: 4,18

    Презентация доклада



    Кто знает Виктора Гамова gAmUssA (по подкасту «Разбор Полётов» или чему-то ещё), то вряд ли удивится, что вроде бы серьёзный доклад про системы конвейерной обработки данных он превратил в интерактивное шоу. Виктор прямо на конференции устроил лайв-кодинг для разбора потока твитов с конференции, используя модные технологии — Apache Kafka, Kafka Connect и KSQL.

    Мы же все знаем и любим SQL, правда? Так вот, KSQL — это почти как SQL, только для Kafka. KSQL позволяет создавать сложные системы обработки потоковых данных, без написания Java или Scala кода.



    Смузи ML вместе со Spark MLlib


    Спикер: Алексей Зиновьев
    Место: 2
    Рейтинг: 4,18
    Презентация доклада



    Для работы над BigData нужны не только data scientist’ы, тюнящие параметры моделей из пакетов на R или Python, но и Java-разработчики, способные понять построенные модели и воплотить их на Java/Scala, в том числе при помощи Spark MLlib.

    Алексей в максимально простых формулировках знакомит слушателей с этой самой мощной библиотекой распределенного машинного обучения, заодно обсуждая особенности использования стандартных алгоритмов машинного обучения и структур данных в Spark. После доклада BigData станет куда понятнее, захочется заниматься ей и покопаться «ручками» самостоятельно — проверено на слушателях.



    Кейноут: JDK 9, Mission Accomplished: What next for Java?


    Спикер: Simon Ritter
    Место: 1
    Рейтинг: 4,29
    Презентация доклада



    А больше всего зрителям понравился кейноут, открывавший конференцию. Сейчас, когда с JBreak 2018 уже прошло много времени, он по названию может показаться страшно устаревшим: уже есть JDK 11, что теперь про девятый-то вспоминать? Но если учесть, что именно с выходом «девятки» сменился релизный цикл и новые версии стали выходить часто, то получится, что как раз на эту версию есть смысл оглядываться: она стала важным «водоразделом», последним по-настоящему масштабным обновлением.

    А если от Саймона вам всё-таки хочется чего-то более актуального, это будет в апреле на JPoint: там из двух его докладов один как раз будет посвящён JDK с 10 по 12 (а другой — выводу типов).

    Кого ещё из этих спикеров можно будет увидеть в апреле на JPoint? На данный момент уже известно, что Олег Докука расскажет про RSocket, а Никита Липский поведает, как AOT-компиляция сочетается со Spring Boot-приложениями. Никита Коваль тоже будет, но тема доклада ещё не объявлена.

    Кроме этого, будет множество других докладов — и описания части из них уже можно прочитать на сайте. Если вы считаете, что и вам есть что поведать — приём заявок на доклады закрывается 31 января, так что сейчас последний шанс успеть. А ещё стоит торопиться с приобретением билетов: это можно будет сделать и позже, но с 1 февраля цена повысится.
    JUG.ru Group
    894,00
    Конференции для программистов и сочувствующих. 18+
    Поделиться публикацией

    Комментарии 0

    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

    Самое читаемое