Встречайте 95-й выпуск SDCast’а, в котором мы говорим про мир Java и JVM. В этот раз у меня в гостях ребята из компании Excelsior, чей флагманский продукт - это Excelsior JET (https://www.excelsior.ru/products/jet), реализация Java™ SE на основе статической компиляции. Поэтому в этом выпуске мы обсуждаем много технических аспектов реализации Java, как рантайма, так и компилятора, утилит мониторинга и производительности и многое другое.
Итак, в этом выпуске приняли участие:
* Никита Липский, один из инициаторов проекта Excelsior JET, и на данный момент руководитель продуктовго отдела JET.
* Павел Павлов, в проекте с 1998 года, отвечает за компиляторную часть проекта, архитектуру ядра JVM, обучает и курирует стажёров и студентов.
* Иван Углянский, один из разработчиков рантайма: GC, загрука классов, многопоточность, профилирование и т.д.
В начале ребята рассказали про историю компании, предпосылки и причины появления на свет альтернативной реализации JVM. Мы обсудили чего не хватает в стандартной JVM, какие есть проблемы, которые пытаются решить другие JVM.
Далее ребята рассказали про Excelsior JET:
* Чем она отличается от других?
* Какие есть особенности и фичи?
* На чём написана?
* Как выглядит архитектура системы в целом, какие есть модули, компоненты что и как взаимодействует
* Runtime и компилятор, как они устроены, какие алгоритмы используют
* Вопросы оптимизации производительности как компилятора, так и рантайма
В процессе дискуссии обсудили в целом JIT и AOT подходы, достоинства и недостатки каждого, в каких случаях выигрывает один вариант, а в каких другой. Вспомнили и про другие реализации JVM и интересные проекты в этой области, например набирающий популярность GraalVM.
Ссылки на ресурсы по темам выпуска:
* Старый (но хороший) доклад Паши и Никиты про JET и историю его появления (https://www.youtube.com/watch?v=G9Oj3e1XCRg)
* Доклад Никиты и Паши со встречи JUG.ru'13 “Excelsior JET: внутренняя архитектура (https://www.youtube.com/watch?v=tXDoGWGfZyw&t=2884s)”
* Доклад Никиты и Виталия Михеева с Java Day'16 “История одной JVM в картинках (https://www.youtube.com/watch?v=DHsVeZNqiVc)”
* Блог Excelsior JET (https://www.excelsiorjet.com/blog/), где можно найти много статей с различными техническими подробностями
* Conservative GC: Is It Really That Bad? (https://www.excelsiorjet.com/blog/articles/conservative-gc-is-it-really-that-bad/)
* Доклад Вани с JPoint'18 “Как сделать встроенный в JVM профайлер, который не боится AOT компиляции (https://www.youtube.com/watch?v=iw4O7G2eyHg&list=PLVe-2wcL84b9CC4_PMCxQrDYywz7J0beo)”
* Доклад Максима Казанцева с jBreak'18 “Как генератор тестов помог стабилизировать компилятор в Zing VM (https://www.youtube.com/watch?v=eyWFQ42dzd0)”
* Доклад Никиты про JetPerfect с JavaDay Kiev'14 “Java худеет. Уменьшение размера дистрибутива Java приложения без зависимостей (https://www.youtube.com/watch?v=2v3YapNH4ss&feature=youtu.be&t=878)”
* Доклад Никиты с JavaDay Kiev'14 “AOT компиляция (https://www.youtube.com/watch?v=aw89H-Vv-Zs)”
* Доклад Никиты и Владимира Парфиненко с Joker'15 “JVM: краткий курс общей анатомии (https://www.youtube.com/watch?v=JbLClSMRK_I)”
* Доклад Vojin Jovanovic с Joker'16 “Polyglot on the JVM with Graal: One VM for Java, node.js, Ruby, R, and C++! (https://www.youtube.com/watch?v=4WZWBpMp2vo)”
* Доклад Douglas Hawkins с JPoint'18 “ReadyNow — an «AOT» with profiling for Java (https://www.youtube.com/watch?v=AGyctnc1DTA)”
* Доклад Volker Simonis со встречи JUG.ru'15 “SAP JVM Internals (https://www.youtube.com/watch?v=IsERHnGn7Vs)”
* Доклад Dan Heidinga с GeeCON'17 “OpenJ9: Under the hood of the next open source JVM (https://www.youtube.com/watch?v=3VporpPlDds)”
* Доклад Marcus Lagergren с JavaDay Kyiv'15 “Design rationales in the JRockit JVM (https://www.youtube.com/watch?v=NODsunhgHRQ)”
Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon)
Плейлист
SDCast
Рад представить вам 143-й выпуск подкаста. У меня в гостях Анна Петровичева, директор компании Xperience AI. И в этом выпуске мы говорим про искусственный интеллект, задачи распознавания изображений и...
SDCast #142: в гостях Полина Чижова, руководитель направления продуктов в СберМаркете
Рад представить вам 141-й выпуск подкаста, в котором речь вновь идёт про безопасность приложений. У меня в гостях Александр Герасимов, директор по информационной безопасности в компании Awillix и Серг...
Встречайте 140-й выпуск подкаста. У меня в гостях Елена Степанова из компании Nokia, спикер конференций C++ Russia. В этом выпуске мы говорим про мобильные сети, базовые станции, системное программиро...
Что-то давно мы не говорили про тестирование и качество софта, а про тестирование программно-аппаратных комплексов и подавно. Исправляемся! Встречайте 139-й выпуск подкаста. В этот раз у меня в гостях...
Что вы знаете про 3D графику в вебе? А про стандарты W3C по работе с 3D графикой? У меня в гостях Денис Радин, так же известный в интернетах как PixelCommander, один из первых react разработчиков в Н...
Давно мы не говорили про безопасность приложений, платформ и вообще аспекты безопасности в разработке. Исправляем! Встречайте 137-й выпуск подкаста. У меня в гостях Артём Кулаков, исследователь безопа...
Встречайте 136-й выпуск подкаста, в котором у меня в гостях Иван Евтухович, сооснователь компании «Экспресс 42». Этот выпуск получился больше философским и без каких-то хардкорных технических подробно...
Встречайте 135-й выпуск подкаста. У меня в гостях Андрей Листочкин, CTO в компании Viravix. Очень давно мы собирались пообщаться с Андреем, но свершилось это вот только сейчас. Так что тем для обсужде...
Рад представить вам 134-й выпуск подкаста, в котором идёт речь про AlmaLinux. Наверняка многие из вас слышали про операционную систему CentOS, которая развивалась в основном силами компании RedHat. Но...
Встречайте 131-й выпуск подкаста. У меня в гостях Евгений Сальников, тимлид в компании «Lamoda». В этом выпуске Женя рассказывает про свой довольно витиеватый путь в Айти. Мы обсуждаем различные аспек...
Как часто вам приходится иметь дело с API? Думаю, что почти каждый день: API сервиса, API браузера, API библиотеки или в конце концов API языка программирования. Как же спроектировать хорошее API, кот...
Встречайте 131-й выпуск подкаста. У меня в гостях Евгений Антонов, тимлид в компании «Positive Technologies». С Женей мы знакомы давно, да и поговорить любим, так что выпуск получился довольно продолж...
Рад представить вам 130-й выпуск подкаста, в котором у меня в гостях Егор Болгов, технический руководитель одного из продуктовых направлений в Semrush. В этом выпуске мы говорим о распиле монолита в с...
Встречайте 129-й выпуск подкаста. У меня в гостях Игорь Кузнецов, тимлид в компании «GOST GROUP». В этом выпуске мы говорим про консалтинг и продуктовую разработку, как давать первичную оценку проекта...
Встречайте 128-й выпуск подкаста, в котором у меня в гостях Виталий Виноградов продукт-менеджер b2b продуктов компании NtechLab. В этом выпуске мы говорим про то, кто такой продукт-менеджер, его роль...
Товарищи, в этот раз вас ждёт необычный выпуск подкаста! У меня в гостях автор и разработчик набора сетевых инструментов Intercepter-NG, так же известный как Ares.
В этом выпуске Ares рассказывает ис...
Рад представить вам 126-й выпуск подкаста, в котором мы говорим про Domain Driven Design (DDD) и unit-тестирование. У меня в гостях Владимир Хориков, автор книги про Unit-тестирование и блога Enterpri...
Встречайте 125-й выпуск подкаста, в котором у меня в гостях Антон Виноградов, руководитель фронтенд-разработки SberDevices (https://sberdevices.ru/). В этом выпуске мы говорим про интернет вещей, умны...
Товарищи! После затянувшегося перерыва встречайте 124 выпуск подкаста! На этот раз у меня в гостях Михаил Боднарчук, веб-разработчик из Киева, автор фреймворков для тестирования Codeception & Codecept...
Встречайте 123-й выпуск подкаста, в котором у меня в гостях Иван Муратов, технический директор Первой Мониторинговой Компании в Краснодаре, активист Краснодарского ИТ сообщества и основатель бэкенд-ми...
После несколько затянувшегося перерыва, встречайте 122-й выпуск подкаста, посвящённый файловой системе ZFS. У меня в гостях Георгий Меликов, контрибьютор проектов OpenZFS и ZFS on Linux.
В этом выпу...
Товарищи, в этот раз вас ждёт необычный выпуск подкаста! Почему? — Этот выпуск был записан в прямом эфире с обсуждением вопросов зрителей, онлайн-голосованиями и другими активностями. Но не переживайт...
Встречайте 120-й выпуск подкаста с ребятами из компании Lamoda. У меня в гостях Павел Савельев, руководитель отдела автоматизации бизнес-процессов и Павел Агалецкий, системный архитектор.
В этом выпу...
Продолжаем серию выпусков про IDE. На этот раз у меня в гостях Андрей Старовойт, разработчик из команды WebStorm в JetBrains.
В этом выпуске мы сконцентрировались на вопросах поддержки в IDE новых фи...
Что-то давно не было у меня выпусков про настоящий Open Source, linux, BSD. Восполняем этот пробел! У меня в гостях Дмитрий Маракасов, разработчик свободного ПО, автор проекта repology (https://repolo...
Рад представить вашему вниманию 117-й выпуск SDCast’а, посвящённый вопросам проектирования и разработки UI/UX программных продуктов. У меня в гостях Денис Падрухин, директор компании разработки INEDI....
Встречайте 116-й выпуск подкаста, на этот раз посвящённый аспектам безопасности мобильных платформ и разработке решений по обеспечению безопасности мобильных устройств. У меня в гостях Виктор Яблоков,...
Рад представить 115-й выпуск подкаста, речь в котором идёт про Bitcoin. Волна хайпа биткоина и блокчейн технологий немного спала, но тем не менее капитализация биткоина по прежнему превышает 130 млд д...
Встречайте 114-й выпуск подкаста! У меня в гостях Александр Кукушкин, database инженер в Zalando. Хотя, наверное, многие знают его как разработчика Patroni: A Template for PostgreSQL HA with ZooKeeper...