Времена меняются
Однако с этим распорядком выхода версий связано немало других изменений, которые проявят себя в этом году, и могут оказаться далеко не такими приятными. За 22 с половиной года мы успели привыкнуть, что у Java, как платформы, есть три основополагающих свойства, связанные непосредственно со способом её поддержки.Стабильность. Ранее возможности, добавляемые вместе с новым выпуском JDK, хотя и были тщательно протестированы, требовали проверки в промышленной эксплуатации. Это помогало обнаружить недостатки, требующие исправлений. Чтобы пользователи могли продолжать работу со стабильными сборками во время тестирования новой, обновления всегда частично перекрывались по времени.
Если взглянуть на несколько последних выпусков, начиная с JDK 6, мы увидим, что обновления для JDK 5 продолжали выходить на протяжении еще почти 3 лет (2 лет и 11 месяцев, если быть точным). С появлением JDK 7, общедоступные обновления для JDK 6 выходили на протяжении года и 9 месяцев. А обновления для JDK 7 выходили в течение 13 месяцев после выпуска JDK 8.
Безопасность. Команды разработки и поддержки OpenJDK, компания Oracle, а до них – Sun Microsystems (компания-создатель Java, прим. ред.) всегда ставили безопасность платформы во главу угла. Как вы помните, Java была изначально предназначена для мобильных устройств (в частности, КПК Star7).
Одной из ключевых целей разработки было обеспечение возможности передачи кода по сети и безопасного его выполнения. Для JDK регулярно публикуются обновления, включающие "заплаты" для обнаруженных проблем с безопасностью. Если инсталлировать эти обновления сразу же после их выхода, вы будете в полной безопасности.
Нулевая стоимость. Одна из самых замечательных черт Java – то, что она всегда была бесплатной платформой, еще даже до выпуска её в виде ПО с открытым исходным кодом в 2006 году. Существовали определенные ограничения на то, где можно использовать Java без лицензионных отчислений, но это всегда касалось мобильных и встроенных приложений, для десктопных клиентов и серверов предприятий актуальная версия Java всегда была бесплатной. Одно из уже проводимых в жизнь изменений в JDK – выпуск исполняемых файлов OpenJDK под лицензией GPLv2 с исключением "Classpath". Эта лицензия не налагает никаких ограничений на возможности развертывания среды выполнения Java.
Поясню немного подробнее
Допустим, вас заботит безопасность (так и должно быть), но вы не хотите тратить деньги. В этом случае вам нужно переходить на новые версии JDK сразу же после их выпуска. В случае, когда поддержка не перекрывается по времени (Feature- и LTS-выпуски), вам придется это делать, чтобы получить новые исправления безопасности. К сожалению, без перекрытия по времени, придется сразу переходить на выпуски JDK, которые еще не были протестированы в промышленной эксплуатации, так что вы потеряете былую стабильность. Другой вариант: можно выбрать стабильность при нулевой стоимости. Опять же, это возможно: все, что вам нужно делать, это продолжать использовать предыдущую версию LTS после выхода новой. Вы получаете привычную стабильность, ничего не должны платить, но "заплат" безопасности не получите, поскольку для этого выпуска они более не доступны. Наконец, если вам нужны стабильность и безопасность, придется заплатить. Вы можете продолжать использовать предыдущий LTS-выпуск, но доступ к исправлениям безопасности и ошибок будет доступен только по коммерческому контракту на поддержку.И небольшой рекламный блок от автора:)
Компания Azul (моя компания) создала набор исполняемых файлов OpenJDK под маркой Zulu Enterprise, скомпонованный из исходного кода, протестированный при помощи тестов TCK/JCK и даже проанализированный с помощью разработанных нами утилит, чтобы убедиться в отсутствии повреждений открытого исходного кода вследствие неправильных заголовочных файлов. Мы предоставляем возможность бесплатного скачивания актуальной его версии, а также коммерческую поддержку для желающих. Мы недавно начали предлагать новый набор вариантов поддержки для Zulu, нацеленный на предоставление заказчикам максимальной гибкости. Мы хотим предоставить пользователям возможность такой миграции на новую версию JDK, которая подходила бы для потребностей их бизнеса и заказчиков. Для этого, мы предоставляем три варианта поддержки:- Краткосрочная поддержка (short-term support, STS). STS предоставляет пользователям самый быстрый доступ к новым возможностям Java, с достаточной поддержкой для "гладкого" перехода на более новые выпуски JDK. Zulu Enterprise предоставляет для STS-выпусков доступ к исправлениям ошибок, обновлениям безопасности и другим исправлениям по мере необходимости ("поддержка промышленной эксплуатации") на 12 месяцев плюс 6 месяцев дополнительной поддержки, ориентированной на консультационную поддержку и помощь пользователям в миграции на более новую версию JDK ("расширенная поддержка"). Это составляет 18-месячный жизненный цикл.
- Среднесрочная поддержка (middle-term support, MTS). MTS-выпуски позволяют использовать в промышленной среде новые возможности, доступные в feature-выпусках, не дожидаясь нового LTS-выпуска. Azul планирует по одному MTS-выпуску в год между LTS-выпусками и обеспечивает поддержку промышленной эксплуатации на 18 месяцев после даты выпуска следующего общедоступного LTS. Это гарантирует перекрытие по времени и "гладкий" переход при развертывании в промышленной эксплуатации. После окончания поддержки промышленной эксплуатации предоставляется дополнительные 12 месяцев расширенной поддержки.
- Долгосрочная поддержка (long-term support, LTS). Она предоставляется для выпусков, которые сообщество разработчиков OpenJDK рассматривает как LTS, и обеспечивает 8-летнюю поддержку промышленной эксплуатации с дополнительными двумя годами расширенной поддержки.
Выводы
В этом году меняется несколько аспектов платформы Java, большая часть – к лучшему. Более быстрый доступ к новым возможностям, выпуск под открытой лицензией таких утилит, как Flight Recorder и Mission Control, выпуск исполняемых файлов OpenJDK под лицензией GPLv2 с исключением "Classpath". Печальная правда, однако, заключается в том, что привычная щедрая бесплатная поддержка платформы Java уходит в прошлое. Java по-прежнему стабильна, безопасна и бесплатна. Какие два из этих трёх качеств наиболее важны для вас и ваших пользователей?
Об авторе Саймон Риттер – заместитель технического директора компании Azul Systems. Саймон занимается IT-бизнесом с 1984 года и имеет степень бакалавра наук по физике Брюнельского университета в Великобритании. Саймон попал в Sun Microsystems в 1996 году и проводил время как за разработкой Java, так и консультациями. С 1999 года он занимался демонстрацией Java-технологий разработчикам, с упором как на базовую платформу Java, так и клиентские и встроенные приложения. Сейчас, в компании Azul Systems, он продолжает помогать людям лучше понимать Java и продукты Azul для JVM. Вы можете подписаться на него в Twitter: @speakjava. |
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ