Volker Simonis — Внутренности SAP JVM [Встреча JUG в Питере]
Уже в эту среду, 14 октября, в петербургском офисе компании Oracle состоится встреча JUG.ru c Фолькером Симонисом из SAP. Тема встречи — внутреннее устройство SAP JVM.
Наверняка многие из вас слышали про SAP — немецкого гиганта, который делает разные корпоративные системы — бухучёт, контроль за производством, финансы, HR, кадры, управление складом и прочий «Кровавый энтерпрайз», который с большой вероятностью стоит в вашей организации, если ее численность превышает тысячу человек.
Фокус в том, что многие (если не все) из перечисленных решений так или иначе работают на Java, и соответственно внутри них крутится JVM. Прикол в том, что это их собственная JVM. Ну как собственная — в свое время она была лицензирована у Sun вместе с исходниками, из которых и разрабатывалась. В данный момент — она лицензируется у Oracle. Соответственно, это некоторый форк Oracle JDK / JVM со своими косынкой и секретаршами, лицензированный, совместимый и т.д. и т.п.
Однако это не только форк, но и порт, поддерживающий 7 CPU-архитектур: x86, x86_64, SPARC, PowerPC, Itanium, z/Arch and PA-RISC на семи разных операционках: OS X, Windows, Solaris, Linux, AIX, as400 and HP/UX. По заявлению SAP, они поддерживают единую систему конфигурирования, единое поведение, одинаковые плюшки и расширения, инструменты анализа и поддержи на всей этой аццкой комбинации платформ.
Как видно из этой таблички, они до сих пор поддерживают Java с 1.4 до 8 на всех упомянутых платформах. Например, Oracle поддерживает нынче только Java 8, а Azul и Red Hat, как я понимаю, только 6, 7 и 8.
Так вот, у нас большое счастье. В эту среду на питерском JUG Volker Simonis, наш большой друг и разработчик SAP JVM, будет в стандартном двухчасовом формате рассказывать про все это щастье. Он будет выступать на Joker и планировал прилетать в четверг, но мы специально попросили прилететь его на день раньше, чтобы сделать с ним отдельный JVM-ный ивент.
Для начала Фолькер расскажет о том, что именно мотивировало их в свое время на это непростое решение — делать и поддерживать собственную JDK и расскажет про их модель разработки. Сложность в этом месте понятна: с одной стороны есть коммерческим образом лицензированные исходники Oracle, с другой — OpenJDK, которая опенсорсная, но в ней нет каких-то фич, с третьей — есть их собственный код. Соответственно, со всем этим надо как-то жить, управляя и развивая.
А дальше речь пойдет про конкретные плюшки, которые есть в их виртуальном машине. Среди тех, что есть в анонсе:
Debugging on Demand — возможность подключаться дебаггером к работающему приложению без его рестарта и получать совершенно любую дебаг-информацию (похожим образом может и HotSpot, но в более ограниченном варианте)
Cloud Debugging — дебаггинг удаленных машин без потерь в производительности
SAP JVM Profiler — профилировщик виртуальной машины, который аттачится к ней без перезапуска и без специального конфигурирования VM на старте.
Кроме этого, у них есть несколько фич, которые позволяют девелоперам ловить ошибки более эффективно. Например, это трэйсы CPU, памяти и I/O, расширенные thread dumps и навороченные сообщения об ошибках для наиболее критичных типов исключений, таких как NPE или ClassCastException.
Ну и естественно, существенная часть рассказа Фолькера будет посвящена деталям реализации всех обозначенных выше фич. Мы же не рекламой тут занимаемся, а технологиями.
До кучи важно отметить, что в то время, как SAP JVM — это лицензированная JDK, доступная только SAP'овским клиентам, существует и триальная версия, которую можно скачать тут.
О Фолькере
Volker Simonis много лет работает в SAP в SAP JVM Technology group. Контрибьютор OpenJDK с самого начала его существования, комиттер, ревьюер, Project Lead порта OpenJDK на PowerPC/AIX. Если быть более точным, они с коллегой в четыре руки втащили в свое время OpenJDK на PowerPC.
Фолькер хорошо знает русский, но про технические вещи предпочитает говорить по-английски. Поэтому язык встречи — английский.
Регистрация
Как всегда, вход бесплатный, регистрация тут.
Для тех, кто не в Питере — видео через неделю появится тут.