Огляд (і відеозаписи) кращих доповідей Java-конференції JPoint 2016: BigData, кишки JVM і паззлеры



У квітні в Москві пройшла JPoint 2016 – найбільша Java-конференція в Росії. Нагадаю, що на конференції було 50 доповідей, які йшли в 4 треках протягом двох днів. У вересні ми відкрили доступ відео для наших читачів, проте руки все ніяк не доходили до публікації топ-10 доповідей на Хабре.

Щоб визначити, які спікери сподобалися учасникам конференції, ми збираємо фідбек, на підставі яких отримуємо досить достовірну зважену оцінку для кожного з доповідей.

Звичайно, якісь доповіді виявляються краще, які гірше. Але у цьому пості мова піде про 10 перлинах, кращих доповідей, оцінка кожного з яких оказалах вище 4.6 за п'ятибальною шкалою. Посилання на інші доповіді з катом, так що вам буде чим зайнятися до Нового Року:)



Євген EvgenyBorisov Борисов — Міфи про Spark або може користуватися Spark звичайний Java-розробник

Доповідь про те, як це – працювати на Scala-фреймворку під Java, – і чому варто це робити у свій час викликав бугурт в коментарях. У доповіді розглянуті структура і принципи роботи Spark, переваги Java 8, які роблять роботу з Spark зручною і лакончиной.

Захоплюючий доповідь, що починається з філософії і наповнений демками є рідкісним винятком, заслужено посіли першу сходинку. Якщо ви пишете на Java і працюєте з BigData – must see:




Тагір lany Валєєв — Чудності Stream API

Доповідь для тих, хто вже працює зі Stream API і кого не лякає слово spliterator. Основну увагу приділено дивакуватістю стримов в області продуктивності, жора пам'яті і паралелізму. Тагір намагався не загострювати уваги на микроэффектах, а поговорити про проблеми, рішення яких дозволяє прискорити ваш код у 2-10 разів.

У доповіді детально розбирається, які баги є у Java 8 Stream API і що буде виправлено в Java 9. Також даються рішення деяких нетривіальних завдань, в тому числі за допомогою бібліотеки StreamEx (автором якої за неймовірним збігом обставин є сам Тагір).




Олексій Шипилев — The Lord of the Strings: Two Scours

Доповідь, який увійшов в ТОП-3 усіх наших Java-конференцій (Joker/JPoint/JBreak). Доповідь допомагає зрозуміти, наскільки сильно відрізняється розробка JDK від звичайних проектів. У рамках виступу Олексій показує дві фічі все ще прийдешнє JDK 9, спрямовані на оптимізацію рядків: Compact Strings, стискаючі рядки з однобайтовыми символами, що покращує футпринт і навіть загальну продуктивність; і Indify String Concat, який використовує магію invokedynamic для конкатенації рядків, що дозволяє підкручувати реалізацію конкатенації без рекомпиляции програм.




Максим Дорофєєв — Виховай свою мавпу

Єдиний нетехнічний доповідь, який отримав високу оцінку аудиторії. Втім, це ж JPoint, у нас навіть нетехнічні доповіді виявляються низькорівневими. Ви дізнаєтесь, що за «мавпа» живе в мозку кожного з нас і яким чином вона змушує нас дивитися ще одну серію « Stranger Things» замість того, щоб працювати або читати корисну книгу.

Цей доповідь про те, як пристосуватися до собі і оточуючим нас людям, щоб встигати виконувати покладені на вас завдання і при цьому йти з роботи вчасно. Можливо, запорука його успіху в тому, що багато розробників – недисципліновані ентузіасти, що працюють ночами і постійно відчувають брак годин у добі.




Сергій Walrus Куксенко — Quantum Performance Effects II: Beyond the Core

JPoint і Joker – конференції, які пробуджують у звичайних, здавалося б, розробників тягу до «залізним» оптимізацій. Саме доповіді Сергія дозволяють втамувати спрагу крові і хардкору: нижче відеозапис другій частині доповіді, в якому йдеться про те, як «маленькі-маленькі хреновинки всередині архітектури сучасних процесорів впливають на продуктивність ваших додатків». частина Перша, присвячена того що відбувається в ядрі процесора.

Новий доповідь присвячено ефектів, які можна досягти за рахунок оптимізації на кристалі, що лежать за межами ядра. Якщо ви любите перфоманс жорсткіше, вам сюди:




Олексій Шипилев — Якщо не Unsafe, то хто: схід VarHandles

Як відомо, Java-розробники люблять sun.misc.unsafe, а розробники JDK не люблять, коли люди пишуть unsafe код. Чому? Тому що «Java is exceptionally safe. Except Unsafe which is unsafe. But it is an exception».



Цей любовний трикутник призвів до того, що в Java 9 доступу до ансейф не буде, а на зміну йому прийде VarHandles – новий API, можна порівняти по швидкості з Unsafe, але безпечніший. У доповіді Олексій жваво з прикладами та бенчмарками розповідає про причини появи нового API, про його можливості, обмеження і швидкості роботи (яка іноді навіть вище, ніж unsafe):




Барух jbaruch Садогурський, Євген Борисов, Тагір Валєєв — Java 8 Puzzlers

Ну, ви знаєте. Puzzlers + Java 8 = win. Кортеж з трьох Java-зірок не міг не увійти в ТОП, особливо з паззлерами. Сервіс добірка з смішних і дуже непростих загадок по Java 8: ідеально підходить для перевірки гостроти розуму, а також для того, щоб зрозуміти, при чому тут яйця.

Дивитися можна вдома, з кухлем чаю/кави/пива заходить краще серіалів:




Руслан cheremin Черемин — Escape Analysis і скаляризация

Окей, back to hardcore з Русланом Череминым про тонкощі роботи Escape Analysis, дозволяє зрозуміти, чи можна без наслідків зробити Scalar Replacement (аллоцировать об'єкт прямо на стеку і не витрачати час на роботу з посиланнями та збирання сміття). Доповідь починається з азів, але можливо перед переглядом ви захочете ознайомитися з блогом Руслана, в якому на цю тему є багато цікавого.

У доповіді на прикладах розглядаються сильні і слабкі сторони алгоритмів escape analysis застосовуються в Java JIT:




Роман Гребенніков — Страх і ненависть в розподілених системах

Бувало у вас таке, що ваш кластер раптово втрачає і псує дані, страждає роздвоєнням мозку і живе своїм насиченим життям проти вашої волі? Цей доповідь прояснює:
  • Які проблеми зустрічаються при створенні розподілених систем;
  • Як можна налажать і допустити типові помилки при проектуванні;
  • Матчастину про цілісність, CAP-теоремою, лінеаризації, консенсус і CRDT;
  • Як всі ці знання застосовувати на практиці і які бувають інструменти для полегшення нелегкої життя розробника розподілених систем.
Доповідь про те, як зробити розподілену систему, не простреливши собі ногу: типові помилки і способи їх вирішення, а також трохи лайв-кодинга на Scala з Docker'ом з втратою даних у прямому ефірі:




Олег m0nstermind Анастасьєв — Розподілені системи в Однокласниках

Доповідь про те, як працює одна з найбільш высконагруженных систем в Росії, обробна до 500 000 (півмільйона, так) запитів в секунду на 8000 серверів в трьох датацентрах. Олег прочитав цей доповідь на трьох наших Java-конференціях (Joker, JPoint, JBreak) і увійшов до списку кращих на кожній – це, як кажуть, неспроста.

Тут ви знайдете приклад побудови відмовостійкої розподіленої системи на Java, основні помилки і відмовах, прийомах їх тестування і діагностики. Також мова піде і про аварії в розподілених системах і методи їх попередження.




Інші відео дивіться на нашому YouTube-каналі.


А в той момент, коли ви зрозумієте, що цікаві відео вже скінчилися, пам'ятайте, що реєстрація і CallForPapers на JPoint 2017 (7-8 квітня, Москва, ЦМТ) вже відкриті.

P. S. Якщо ви живете в Сибіру і вам важко і дорого добиратися до Москви, рекомендую звернути увагу на JBreak (Новосибірськ, Експоцентр).
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.