Представляем Amazon Corretto, бесплатный дистрибутив OpenJDK с долгосрочной поддержкой

Автор оригинала: Arun Gupta
  • Перевод
image

Java является одним из самых популярных языков, используемых клиентами AWS, и мы стремимся поддерживать Java, сохраняя эту поддержку бесплатной. Многие наши клиенты стали беспокоиться о том, что они будут вынуждены платить за LTS-версию Java при выполнении своей рабочей нагрузки. В качестве первого шага мы недавно подтвердили долгосрочную поддержку Java в Amazon Linux. Однако, наши клиенты и более широкое Java-сообщество запускает Java на различных платформах, как на AWS, так и вне её. Вот почему мы рады анонсировать предварительную [preview] версию Amazon Corretto — бесплатного, мультиплатформенного и готового к использованию на продакшене дистрибутива OpenJDK от Amazon.
«Amazon имеет долгую и глубокую историю с Java. Я очень рад видеть, что работа нашей внутренней критически важной Java-команды становится доступной для остального мира»
— Джеймс Гослинг [James Gosling, создатель языка Java, работает в AWS с мая 2017 года]

Amazon запускает Corretto в продакшене для тысяч сервисов. Патчи и улучшения в Corretto позволяют Amazon решать масштабные, реальные проблемы, удовлетворяя высокие требования к производительности и масштабируемости. Мы делаем их доступными для клиентов с бесплатной и долгосрочной поддержкой, с ежеквартальными обновлениями, включая исправления ошибок и обновления безопасности. AWS также предоставляет клиентам срочные исправления вне квартального графика.

Corretto поставляется с поддержкой нескольких платформ, что позволяет запускать его в облаке, на своих серверах или локальной машине. Corretto 8 preview соответствует OpenJDK 8 и доступен в настоящее время для платформ Amazon Linux 2, Microsoft Windows, macOS и в виде Docker-образа. Предварительные сборки можно загрузить с сайта aws.amazon.com/corretto. Общедоступная версия [General Availability] запланирована на первый квартал 2019 года, и будет также включать поддержку платформ Ubuntu и Red Hat Enterprise Linux. Corretto 11, соответствующий OpenJDK 11, на этих платформах выйдет с достаточным запасом по времени для тестирования до апреля 2019 года.

Мы запускаем Technology Compatibility Kit (TCK) [набор тестов для проверки реализации JVM на соответствие спецификации] на каждом релизе Corretto для обеспечения совместимости с платформой Java SE. Corretto разрабатывается как замена любому из дистрибутивов Java SE, если вы не используете функции, отсутствующие в OpenJDK (например, Java Flight Recorder [в действительности, JFR был добавлен Oracle в OpenJDK 11]). После того, как сборка Corretto будет установлена на хост и правильно настроена для запуска ваших Java-приложений (например, используя alternatives на Linux), существующие параметры командной строки, параметры настройки, мониторинг и всё остальное будет продолжать работать по-прежнему.

Amazon будет распространять обновления безопасности на Corretto 8 бесплатно по крайней мере до июня 2023 года, а на Corretto 11 — до августа 2024 года. Corretto включает в себя бэкпорты из более новых версий, а также свежие улучшения от сообщества OpenJDK. Процесс выпуска включает в себя тестирование на тысячах сервисах Amazon, что позволяет выпускать исправления в течение нескольких дней после обнаружения проблем.

Начало работы


Самый простой способ попробовать Corretto — это скачать пакет под выбранную платформу и проверить версию Java:

% java -version
openjdk version "1.8.0_192"
OpenJDK Runtime Environment (build 1.8.0_192-amazon-corretto-preview-b12)
OpenJDK 64-Bit Server VM (build 25.192-b12, mixed mode)

На странице загрузки есть список ссылок на инструкции по установке на все поддерживаемые платформы.

Corretto и OpenJDK


Amazon уже внёс небольшой вклад в OpenJDK 8 и мы с нетерпением ждём возможности тесно сотрудничать с сообществом OpenJDK над будущими улучшениями OpenJDK 8 и 11. Мы переносим исправления, сделанные в OpenJDK, добавляем улучшения на основе нашего собственного опыта и потребностей, а затем создаём сборки Corretto. Если продвижение этих патчей не будут успешными, окажутся отложенными или не подойдут для проекта OpenJDK, мы будем предоставлять их нашим клиентам до тех пор, пока патчи будут иметь ценность для них. Если проблема будет решена в OpenJDK другим образом, мы перейдём к этому решению, как только этот переход будет безопасным. Вы можете найти исходный код Corretto по адресу github.com/corretto.

Мы планируем, что Corretto станет дистрибутивом OpenJDK по умолчанию на Amazon Linux 2 в 2019 году.

Мы призываем вас запускать ваши Java-приложения с использованием Corretto. Загрузите Corretto 8, посетив aws.amazon.com/corretto, и узнайте больше об этом, прочитав документацию на docs.aws.amazon.com/corretto. Не стесняйтесь задавать любые вопросы на StackOverflow или в Твиттере (@awsopen).

Об авторе


Arun Gupta — Principal Open Source Technologist в AWS. Занимается всем связанным с контейнерами и Open Source в AWS. За своими плечами имеет продолжительный опыт работы в Sun, Oracle, Red Hat, Couchbase, а теперь и в AWS. Ведёт популярный твиттер-аккаунт @arungupta, активно выступает на конференциях (в прошлом году выступал на московском JPoint)
.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Что будете делать с учётом платности LTS-версии Oracle JDK 11+?

  • 50.4%Уже используем OpenJDK55
  • 0.9%Платим (или будем платить) Ораклу за Java1
  • 23.8%Используем старую версию Oracle JDK и не планируем обновляться26
  • 2.7%Используем другую проприетарную JVM3
  • 15.5%Перейдём на Corretto, когда будет GA17
  • 6.4%Свой вариант (напишу в комментариях)7
Поделиться публикацией
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама

Комментарии 27

    +1
    Мы пока используем в продакшене Java 8 от Oracle и планируем мигрировать на OpenJDK 11.

    С появлением LTS-версии OpenJDK под CentOS — вариант с Corretto становится для нас весьма интересным.
      0

      Интересно сколько нужно времени чтобы количество сборок openjdk достигло 5, и они начали по чуть-чуть расходиться по дополнительному.

        +3
        Первое уже произошло.

        1. Alibaba JDK
        2. Oracle OpenJDK (то, что скачивается с jdk.java.net/11)
        3. AdoptOpenJDK (Community Edition)
        4. Corretto
        5. Red Hat IcedTea
        6. Azul Zulu

        Это то, что сходу удалось вспомнить. Наверняка, есть и другие не менее популярные.
          +2

          Вот ещё:


          1. Liberica JDK 11
            0

            Теперь мне интересно когда их станет 10 =)

              0
              IBM, SAP
                0
                Для IBM имеется в виду IBM J9 и её опенсорсный вариант Eclipse OpenJ9? Если ничего не путаю, это не форк OpenJDK, а самостоятельная реализация.
                  0
                  Не заметил, что речь о openjdk based, думал просто в перечисление играем.
              0
              Строго говоря, их и раньше было больше одного.
              Раньше, в смысле, даже в те времена, когда еще был Sun.
              IBM, MS, Excelsior, JRockit, и это только то, с чем сталкивался,
              +2
              О-ох… противоречивые чувства охватывают меня.
              Надеюсь спустя какое то время не понадобиться колхозить проверки в коде на основе java.vendor
                0
                Мда, возможен этакий облачный вендор-лок
                  0
                  Наблюдаю обратную тенденцию с переносом vendor-специфичных на светлую сторону, например, в Java 9 класс sun.misc.Unsafe переехал в другой пакет: jdk.internal.misc.Unsafe.
                  +1
                  Начинаю ещё пристальнее присматриваться к C#
                    +1
                    1. .NET Framework (множество версий, в том числе несовместимых)
                    2. Mono
                    3. .NET Core 1.x
                    4. .NET Core 2.x
                    5. .NET Standard 1.0
                    6. .NET Standard 2.0

                    Мир C# ещё очень далёк от стандарта, в котором перестали бы ломать API. Через годик можно ещё попробовать присмотреться. Или мой анализатор сарказма сломался и это была шутка?)
                      0
                      Само собой, но они работают. И по последним статьям на том же хабре — мне импонирует их направление. А вот куда движется Джава, её приоритеты — не совсем.
                      (не сломался, не шутка)
                        0
                        А какие приоритеты у java?
                          0
                          Мультимедию, апплеты — закопали. Вместо extension methods ввели стримы с никому не нужной параллельностью. Value types даже не предвидится.
                            0
                            Апплеты — не нужны, дыра в безопасности.
                            Мультимедиа — чем плох JavaFX Media?
                            Extension methods — чем статичные методы не угодили?
                            Value types — wiki.openjdk.java.net/display/valhalla/Main
                              0
                              Апплеты — серьёзно? Давайте все процессоры интел выкенем — это дыра в безопасности.
                              JavaFX — тем что это JavaFX. И камеру не умеет. И ещё много чего.
                              Статичные методы — серьёзно? (Я бы ответил, но сильно попахивает троллингом)
                              Valhalla — и как насчёт сроков? Я знаю языки, в которых уже вчера было.
                                0

                                Valhalla — очень серьёзный проект, который помимо Value Types затрагивает Generic Specialization (Generic для примитивов) и в каком-то виде Reified Generics (для Value Type). Как это всё сделать, дабы не поломать совместимость?

                        0
                        В чем заключается их несовместимость, особенно обычных фреймворков? Обратная совместимость там есть.
                          0

                          Это в теории всё замечательно, но на практике разработчики сталкиваются с кучей проблем.

                            0
                            Ссылка не в тему. Она описывает проблемы перехода на .NET 4.0, вышедшего в 2010г.

                            Но в целом, тенденция с .NET Core разных версий напоминает. Единственное, что можно для Win на нее не переходить, т.к.обычная версия продолжает поддерживаться.
                              0

                              Так я не спорю, что внутри 4.x таких проблем нет. Я защитил тезис с проблемами совместимости у некоторых версий .NET Framework.

                              0
                              Я не сталкивался. И это не разработчики сталкиваются, а в статье описаны потенциальные проблемы миграции, причем актуальные лет 8 назад.
                        0

                        Что происходит? Ява становится платной? Чем простая openjdk не устраивает?

                          0

                          Так компании хотят back-porting улучшений и security patches.
                          Если идти в ногу со временем (всегда быть на последней версии Java), то всё должно устраивать.

                        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                        Самое читаемое