Не успели еще улечься впечатления от Joker 2017, а мы уже готовим JPoint 2018. Точнее, мы начали готовить его уже пару месяцев назад, так что сегодня уже есть что анонсировать! Как видите, Java-конференции мы делаем без пауз.
Давайте посмотрим, что у нас есть:
- Название: Java-конференция JPoint 2018.
- Дата и место проведения: 6-7 апреля 2018 года, Москва, Конгресс-центр ЦМТ.
- 10 докладчиков уже подтвердили свое участие.
- Call For Papers.
- Выставка и стенды.
- Несколько тренингов.
Все подробности — под катом.
Программа конференции
Здесь беспокоиться не о чем: только Java, только хардкор! Плотность докладов не снизится, все те же два дня и четыре трека.
Будем говорить про кишочки и производительность JVM, concurrency, распределенные и высоконагруженные системы, Java 8/9/10 и отборные фреймворки и инструменты (Spring, Spark, BPF, да много чего еще! Дальше видно будет). А пока давайте посмотрим на те доклады, которые уже вошли в программу:
Sanhong Li, Alibaba — Extreme Scaling with Alibaba JDK (AJDK)
Последние пару лет ко мне на каждой нашей Java-конференции подходят участники, друзья и партнеры и задают один и тот же вопрос: «А чего у вас Alibaba нет?» Теперь есть. Да не просто девелопер одного из крупнейших в мире проектов, а лид JVM-направления. То, что надо для JPoint. Встречайте Sanhong Li — человека с опытом работы в IBM, опенсорс-контрибьютора OpenJDK, а теперь ведущего разработчика Alibaba JDK, кастомной версии OpenJDK.
11 ноября Alibaba снова побили собственный рекорд пропускной способности, достигнув проведения 325,000 транзакций в секунду (на 60% больше, чем в прошлом году!), почти все из которых проводились в десятках тысяч Java-сервисов на сотне тысяч серверов. В этом докладе Sanhong расскажет о том, как они кастомизировали OpenJDK под свои задачи, а именно:
- О разработке собственного, без-GC, механизма аллокации объектов, позволяющего создавать объекты в так называемых «скрытых регионах» и работать с ними как с нормальными Java-объектами без GC-оверхеда.
- Об интеграции корутин в JVM для реализации асинхронных алгоритмов.
- О создании кастомной эффективной real-time диагностики для своей JVM.
Кроме того, вы узнаете, как именно ребята из Alibaba, опираясь на аналитику нагрузок на свои сервисы, пришли к выводу, что именно такие фичи им нужны. В общем, доклад будет полезен независимо от того, насколько высокие у вас нагрузки.
Два доклада от Juergen Hoeller, Pivotal
Вы наверняка знаете Юргена, сооснователя Spring Framework open source project, а если не знаете, то самое время познакомиться — с 2003 года именно он занимается релиз-менеджментом и руководит core-проектом Spring Framework (уже 14 лет, в голове не укладывается). На JPoint 2018 у него будет два доклада:
- Spring Framework 5: feature highlights and hidden gems
Ключевой фичей Spring Framework 5.0 стала поддержка функционального и реактивного подходов к разработке, однако в новой версии есть еще много менее заметных и «раскрученных» штук.
В доклад войдет детальный обзор как главных фич, так и тех, которые Юрген лично для себя выделяет как любимые и наиболее полезные. Кроме того, вы сможете узнать, что нового будет в грядущем 5.1 релизе.
- Spring Framework 5.0 on JDK 9
На JPoint 2018 Юрген планирует рассказать про то, что станет насущным вопросом для многих Java-разработчиков. Вы, конечно же, сразу подумали про нее, долгожданную — миграцию на JDK 9. Именно поэтому Юрген и раскроет технические аспекты того, как пятая версия Spring Framework работает не только с «восьмеркой», но и с «девяткой». В этом докладе Юрген покажет, с какими сложностями в обеспечении совместимости с JDK 9 сталкиваются разработчики фреймворков. Кроме того, здесь вы найдете конкретные и практические рекомендации по обновлению Spring-проектов на JDK 9, приправленные обзором преимуществ и «жертв», связанных с обновлением.
Stephane Nicoll, Pivotal — Reactive Web Applications with Spring Boot 2.0
Новое поколение приложений Spring Boot уже здесь: с версией 2.0 вы можете использовать Spring WebFlux reactive web framework. В сессии, где все будет сдобрено лайвкодингом, вы увидите, как рождается WebFlux-приложение, и поймете, как максимально эффективно использовать фичи Boot: Actuator, Developer Tools и другие.
WebFlux позволяет писать реактивные веб-компоненты и поддерживает новые HTTP-рантаймы, вроде Netty, поэтому у вас теперь есть выбор: писать по старинке в стиле Spring MVC или попробовать новый функциональный подход, который называется «WebFlux.fn».
Sander Mak, Luminis Technologies — Migrating to Java 9 modules
Java 9 представляет новую систему модулей. Необязательно ее применять, но при ее использовании открывается много возможностей. Насколько сложно перенести существующий код, чтобы использовать новую систему модулей? Перенос существующей кодовой базы из classpath в любую модульную систему может оказаться непростой задачей. Даже есть вы еще не собираетесь использовать модули, запуск вашего приложения на classpath Java 9 может вызвать новые трудности. В данном докладе будут предложены решения подобных проблем.
Чтобы сделать миграцию проще, Java 9 предоставляет несколько фич, включая автоматические и анонимные модули. В докладе мы разберём примеры миграции реального кода, основанного на приложении Spring/Hibernate. Рассмотрим общие проблемы, с которыми можно столкнуться во время переноса. Вы получите дельные советы и понимание системы модулей и особенностей переноса. Доклад послужит отличной подготовкой для начала миграции вашего кода.
Rabea Gransberger, MEKOS — Refactoring your code to Java 9 modules
Java 9 позволяет разбивать код на модули и давать доступ только к конкретным пакетам, таким образом скрывая публичные классы от чужих глаз (и рук… и кода!). Кроме того, разбивая код на модули, вы увеличиваете его переиспользуемость, упрощаете поддержку вашего решения и снижаете темпы роста технического долга.
Rabea покажет несколько способов разбиения существующего монолитного решения на несколько модулей. Выберем инструменты, которые позволят понять, какие именно части можно отделять, а чтобы все прошло безболезненно, используем пару трюков в рефакторинге. В конце посмотрим на некоторые сложные примеры и применим паттерны, которые позволят с ними справиться.
Gerrit Grunwald, Canoo Engineering AG — JavaFX on JDK 9
Если на Joker 2017 докладов, посвященных «девятке», было не так и много, то на JPoint 2018 с этим точно проблем не будет! Четвертый доклад о JDK 9 в нашей подборке представит Gerrit Grunwald.
Блогер, основатель Java User Group Münster (Германия), JavaOne Rockstar и Java Champion — вклад Геррита трудно переоценить. Он расскажет о том, как система модулей JDK 9 повлияла на разработку и работу JavaFX-приложений: что нового появилось в JavaFX 9? Что вы получите, что потеряете, перейдя на JDK 9?
Christopher Batey, Lightbend — Building scalable, back pressured services with Akka
Что значит «асинхронная back pressured-программа»? Почему это так важно для масштабируемых сервисов? В данном докладе попробуем найти ответы на эти вопросы.
Затронем:
- thread per request vs. асинхронные сервисы;
- что такое «back pressure» и как с ним работать вплоть до сетевого уровня;
- как работать с «back pressure», используя Akka HTTP и Akka Streams;
- как это соотносится с другими инструментами асинхронного программирования (CompletableFutures, Observables и т.д.).
Если останется время, также покажем, как сетевое приложение отправляет back pressure через протокол прикладного уровня, протокол TCP и прямо в приложение клиента.
Роман elizarov Елизаров, JetBrains — Kotlin Coroutines
Доклад для тех, кто любит Kotlin и кишочки: Роман в подробностях расскажет и покажет, как проектировались и реализовывались корутины в Kotlin.
Будет много байткода и бенчмарков, которые будут отвечать на такие вопросы, как «зачем нужны корутины»; «в чем разница между CPS и CSP»; «что происходит, когда запускаются корутины, и какой оверхед это дает»; «как вообще все это реализовано на JVM».
Douglas Hawkins, Azul Systems — ReadyNow — an «AOT» with profiling for Java
Думаю, нет смысла объяснять разницу между JIT и AOT компиляцией, все мы ее прекрасно знаем. JIT хорошо оптимизируют, но долго разогреваются, а AOT-компиляция не позволяет добраться до многих неоптимальных кусков кода.
В докладе речь пойдет о технологии ReadyNow, ведущим разработчиком которой является Дуглас. ReadyNow пытается скомбинировать преимущества обоих типов компиляторов, избежав их недостатков. Здесь стоит подчеркнуть, что Дуглас — разработчик, а не евангелист, так что в процессе доклада можно будет заглянуть под капот технологии и попытаться понять, как вот это вот все работает. Посмотрим, получается ли (и за счет чего) у ReadyNow ускорить прогрев JIT-а и избежать деоптимизаций, а также попробуем понять, как технология позволяет Java АОТ-компиляторам преодолевать «врожденные» болезни.
Sasha goldshtn Goldshtein, Sela Group — Linux container performance tools for JVM applications
«Контейнерная революция» уже произошла — все вокруг пакуют, контейнеризуют и разворачивают свои Java-приложения. Впрочем, как и любая абстракция, контейнеры приносят не только радость и счастье, но и проблемы, связанные с мониторингом, профилированием и трейсингом ваших приложений. Проблема в том, что несмотря на то, что контейнер — это просто процесс с парой изолирующих фишек и ограничением по ресурсам, многие performance-инструменты, прекрасно работающие под Linux, с контейнерами приходится использовать нестандартно. Некоторые вообще начинают врать и просто отчитываться на основе данных хоста, а не контейнера, в котором они запущены.
Саша в своем докладе расскажет, как решать наиболее распространенные перформанс-проблемы с контейнерами:
- как понимать уровень потребления ресурсов внутри контейнера;
- проблемы с потреблением процессорного времени или лимитами на ресурс CPU;
- проблемы с задержками дисковой или файловой системы;
- межконтейнерный доступ с базе данных.
Для этого у Саши подготовлен арсенал инструментов: perf, async-profiler, flame graphs и BCC, и еще несколько других открытых и коммерческих инструментов, на которые можно положиться.
Call For Papers
Если вы считаете, что люди, перечисленные выше, недостаточно хороши, и вы можете сделать доклад лучше — подавайте заявку, Call For Papers открыт!
Впрочем, есть и другой сценарий: если у вас есть интересный продакшн, и вы хотите выступить на одной сцене с ребятами из Oracle, Pivotal и JetBrains — тоже подавайте доклад. Важно понимать, что, если вы сомневаетесь или думаете, что вам нечего рассказать, лучше подайте заявку и посоветуйтесь с нашим Программным комитетом, они оценят, посмотрят и расскажут. На самом деле очень часто то, что вам кажется тривиальным и рутинным, для других может оказаться открытием или best practice. Так что не стесняйтесь!
Время подготовиться есть — наш Программный комитет поможет сделать из вашей идеи и ваших наработок отменный доклад: посоветует, каких деталей добавить, где убрать лишнее, как презентацию довести до совершенства и, конечно, оценит вас на 1-2 тренировках. Я лично видел несколько примеров, когда докладчик, совершенно сырой и неготовый, за пару месяцев работы с нашим Программным комитетом готовил и полировал доклад так, что потом входил в топ JPoint.
Дискуссионные зоны
Наверняка вам знакомо чувство, когда вы поднимаете руку, чтобы задать вопрос, а ведущий вдруг объявляет: «Осталось время для одного вопроса», – и конечно, выбор падает не на вас, а в перерыве спикер скрывается за дверьми спикерских комнат.
Если за прошедший год вы хоть раз были у нас на конференциях, то вы знаете о том, что у нас так не бывает. Каждый доклад сопровождается дискуссионной зоной. От этого формата в восторге все: и участники, и докладчики, — можно спокойно задать конкретные вопросы в специально отведенном месте, у спикера есть возможность конструктивно и обстоятельно ответить на любой вопрос, каким бы узким он ни был, не думая о тайминге или о том, интересно ли это все слушателям.
Именно дискуссионные зоны отвечают на вопрос «зачем ходить на конференции, когда можно и в интернете все узнать». Все просто: чтобы лично задать ваш конкретный вопрос. Что ж, на JPoint для этого созданы все условия: в длительных перерывах трек-оунеры приведут спикера в выделенное пространство с доской для иллюстраций, сидячими местами и возможностью схватить чашку кофе. Теперь ни один вопрос не утонет в тайминге.
Online-трансляция
Все доклады конференции можно смотреть онлайн, купив соответствующий билет. Впрочем, у наших трансляций есть пара фишек, о которых стоит рассказать:
- Видео в 1440р — дополнительное пространство используется для одновременного отображения спикера и FullHD слайдов (или экрана ноутбука для live coding) на одном экране;
- Возможность смотреть доклады из любого зала, у вас столько же возможностей, что и у участников, приехавших лично!
- К тому же, если у вас возникнет вопрос, вы сможете задать его докладчику через Telegram-чат конференции и сразу же получить на него ответ;
- Улучшенное качество звука, серьезно переработана система звукозаписи;
- В перерывах между докладами, когда спикеры и участники на площадке удаляются в дискуссионные зоны, зрителям онлайн-трансляции мы показываем репортажи и интервью со спикерами и спонсорами от phillennium и olegchir. Эти ребята знают свое дело, можете убедиться сами на примере Joker 2017;
- Решено много мелких технических проблем, которые большинство даже не заметило, но они там были. В целом, ощущение от просмотра трансляции должно быть лучше.
Выставка и стенды
В прошлый раз на JPoint у нас на выставке было 10 стендов: Сбербанк-Технологии, Одноклассники, JetBrains, GridGain, Альфа-Лаборатория и многие другие. На Joker к нам пришло 24 компании, если темп сохранится, то придется через пару лет делать конференцию в Крокусе. :)
В этот раз спонсоров будет много, и у них будет интересно: почти все компании готовят разные интерактивные штуки, начиная от задачек с призами, заканчивая играми, управляемыми силой мысли, или VR-аттракционами. Кроме того, на каждом из стендов можно узнать, чем живут компании, позаниматься фаллометрией (у кого офис круче) и просто поговорить за жизнь с ребятами из крупнейших компаний IT-мира.
Тренинги
С этого года совместно с конференцией мы делаем тренинги, на Joker 2017 мы пригласили Евгения EvgenyBorisov Борисова и Кирилла tolkkv Толкачева с двумя тренингами по Spring и Николая xpinjection Алименкова. В этот раз мы расширяем «ассортимент» и ведем переговоры еще с несколькими тренерами.
Когда будут подробности, мы вам сообщим. Оставайтесь на связи.
Купить билеты
Регистрация открыта, сейчас действуют ранние билеты. Если вы уже были на JPoint и знаете, что это такое — смело регистрируйтесь! А если не уверены, подождите более высоких цен и окончательной программы. Или посмотрите наш трехминутный ролик и попробуйте понять, хотите ли вы окунуться в эту атмосферу:
Хотя я всегда говорю, что программу приятнее ждать с билетом в кармане.
До встречи на JPoint 2018!