Что такое техподдержка Java-приложений и зачем она нужна

Лицензия с техподдержкой: ваши Java-приложения этого заслуживают


8 сентября, 2021


Успех компании БЕЛЛСОФТ — это успех наших клиентов. Настоящие лидеры знают: чтобы быть лучшим, нужно непрерывно работать над собой. Это — трудная задача, а без надежной поддержки в лице коллег, друзей и родных она может стать и вовсе невыполнимой.

В этом отношении Java-приложения похожи на людей. Необходимо постоянно повышать их эффективность и безопасность, чтобы КПД оставался на должном уровне. Ключевым компонентом этого процесса является качественная техподдержка.

В данной статье мы рассмотрим преимущества техподдержки JDK для ваших проектов разработки ПО и расскажем вам о случаях, в которых поддержка сыграла решающую роль. Вы узнаете, как с ее помощью улучшить ваши приложения, и по каким принципам БЕЛЛСОФТ выстраивает систему техподдержки нашего главного продукта — Liberica JDK (с 2022 года - Axiom JDK).

Однако перед тем, как погрузиться в эту увлекательную тему, давайте узнаем ответ на главный вопрос, связанный с производительностью ваших приложений.

Contents

  1. Главный вопрос разработчика
  2. Система техподдержки ваших Java-приложений
  3. Как работает надежная поддержка и зачем она нужна
    1. Случай 1. Загадочные сбои
    2. Случай 2. Устранение 20-летнего бага
    3. Случай 3. Перегрев платы Pi
  4. БЕЛЛСОФТ всегда к вашим услугам!

Главный вопрос разработчика

В процессе написания программы перед вами стоит много разноплановых задач, однако все они сосредоточены вокруг ответа на простой вопрос:

Работает ли мое приложение именно так, как я хочу?

Первый ответ, который приходит на ум: «Конечно!» Однако признайтесь: это не всегда соответствует истине. Как мы уже выяснили, программу нужно постоянно улучшать и обновлять, чтобы она соответствовала вашим целям. Вы уверены, что действительное соответствует желаемому?

alt_text

Вопросы, которые вы должны задать себе при разработке приложения

Если вы честно ответили «да» на все эти вопросы — поздравляем! Ваша команда уделяет достаточно времени на улучшение приложения. Однако даже несмотря на это, у вас все равно могут наблюдаться уязвимости и баги в рантайме Java, и без помощи профессионалов с ними не справиться. Как раз с этим мы готовы вам помочь. Поддержка со стороны надежного партнера (а именно команда инженеров БЕЛЛСОФТ) гарантирует, что ваша среда исполнения будет работать в соответствии со спецификацией, в результате чего ваши Java-приложения смогут показать себя во всей красе.

Система техподдержки ваших Java-приложений

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

В идеале, хорошая техподдержка решает проблемы, возникающие на этапе выполнения ваших приложений, обеспечивает высокий уровень их стабильности и безопасности. Благодаря этому у вашей команды будет достаточно времени для разработки внедрения новых фич. К сожалению, так происходит не всегда. Как оказалось, большинство разработчиков не довольны качеством предоставляемой им техподдержки.

alt_text

Реакция разработчиков на неквалифицированную техподдержку

Итак, разработчики буквально взывают о помощи. БЕЛЛСОФТ не могла не откликнуться на их призыв и разработала систему техподдержки JDK, основанную на следующих принципах:

  • «Безопасность прежде всего». Мы понимаем, что ваш бизнес нуждается в защите. Мы знаем цену безопасности;
  • «Боевая готовность». Вам не нужно долго ждать ответа. Мы стараемся помочь вам как можно быстрее;
  • «Обойдемся без посредников». Вам помогают те же специалисты, которые разрабатывают продукт;
  • «Помогли одному — помогли всем». Мы устраняем любую проблему или ошибку, о которой сообщили наши клиенты, и вносим обновление в следующую версию продукта. Это позволяет гарантировать, что проблема больше не возникнет;
  • «Платите только за то, что вам необходимо». Мы полагаем, что хорошая техподдержка должна быть доступна всем. Мы предлагаем различные планы техподдержки, которые вы можете адаптировать в соответствии со своими потребностями. Кроме того, вы всегда знаете, за что платите, и какую выгоду вы получите сейчас и в перспективе;
  • «Мы в числе тех, кто создает язык Java». Наши разработчики входят в OpenJDK Vulnerability Group и исполнительный комитет Java Community Process, что позволяет нам вносить непосредственный вклад в улучшение Java™;

Как работает надежная поддержка и зачем она нужна

Со средой исполнения связаны две наиболее серьезные угрозы:

Ваши приложения не функционируют надлежащим образом

Они работают все медленнее, со сбоями, а то и вовсе не запускаются. Вы теряете время, деньги, ресурсы, а в итоге и клиентов.

Ваши приложения не безопасны

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

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

В чем преимущества надежной техподдержки?

  • Вы гарантировано будете работать в сертифицированной среде исполнения с устраненными уязвимостями и новейшими патчами безопасности. Использование ненадежного рантайма Java или экспериментальной сборки может привести к неожиданным неисправностям при обновлении, которые, в свою очередь, повлекут за собой сбой всей системы1;
  • У ваших разработчиков будет больше времени на улучшение приложения и внедрение новых фич;
  • Вашим экспертами по информационной безопасности станет гораздо проще работать;
  • Вам станет гораздо проще поддерживать безопасность и стабильность среды исполнения ваших приложений.

Из множества случаев, когда нашим инженерам удалось решить проблемы клиентов, мы выбрали несколько, которыми спешим с вами поделиться:

Случай 1. Загадочные сбои

Клиент: Компания, специализирующаяся на облачных вычислениях и технологиях виртуализации.

Описание: Наш клиент разработал сложный проект с разными фазами обработки данных, код которого был корректен и прошел модульное тестирование. Однако проект «ронял» любую версию OpenJDK в непредсказуемом месте.

Решение: Мы за короткое время внесли исправление в код рантайма, и проект запустился с первой попытки. Мы выпустили экстренный патч для клиента и добавили решение в следующий патч безопасности.

Случай 2. Устранение 20-летнего бага

Клиент: QZ, компания-разработчик API для печати.

Описание: Значительное ухудшение качества печати.

Решение: Клиент обратился к нам с проблемой, и мы начали работу над решением в тот же день. Оказалось, что в ее основе лежало несколько багов. Одному из них было больше 20 лет! Мы также внесли в сообщество (через подпроект OpenJDK) предложение об изменении публичного API.

Поскольку проблема была связана с качеством печати, она ставила под угрозу бизнес клиента. Из-за нее QZ отказалась от услуг своего предыдущего поставщика услуг техподдержки JDK и обратилась к БЕЛЛСОФТ. Если бы и нам не удалось найти решение, компания была готова отказаться от Java™.

«Жаль, что я не знал о БЕЛЛСОФТ 6 лет назад. От других поставщиков у нас были одни неприятности. В какой-то момент мы вообще хотели распрощаться с Java™. С БЕЛЛСОФТ все по-другому. Не только время ответа сократилось в разы, но и сама наша компания вышла на новый уровень благодаря опыту и самоотдаче команды БЕЛЛСОФТ. Специалисты не только устранили древний баг, они обнаружили и другие проблемы и оперативно их решили. А это было непросто; БЕЛЛСОФТ попросила разработчиков соответствующего подпроекта OpenJDK изменить публичный API. Те согласились. Это как раз то, что объединяет нас и БЕЛЛСОФТ: профессионализм и стремление довести дело до конца. Именно на этом основан успех любого продукта».

Трес Финоккьяро,
Ведущий разработчик QZ Tray (приложения для настольных систем)

Случай 3. Перегрев платы Pi

Клиент: Сообщество OpenJDK.

Описание: В OpenJDK есть порт arm32, подходящий для разных поколений Raspberry Pi (основным поддерживающим вендором этого порта является БЕЛЛСОФТ). В какой-то момент, после многочисленных обновлений среда исполнения начала оказывать чрезмерную нагрузку на процессор. Это приводило к его перегреву, что делало запуск приложений невозможным.2

Решение: Наши инженеры решили проблему и сразу внесли исправление в основную ветвь. Это очередной пример добровольного вклада БЕЛЛСОФТ в развитие сообщества.

БЕЛЛСОФТ всегда к вашим услугам!

Если какая-либо из этих проблем вам знакома, не отчаивайтесь! Присоединяйтесь к нашей системе техподдержки, выберите план, который подходит именно вам, и вдохните новую жизнь в свои приложения. Отныне они будут расти, совершенствоваться и обогащаться новыми функциями. Ведь как сказал один мудрый человек: «Без поддержки окружающих вы ничего не достигнете в одиночку».

References

  1. Сборки OpenJDK неизвестного происхождения возвращаются
  2. Баг Raspberry Pi OpenJDK, который устранили инженеры БЕЛЛСОФТ
Author image

Олег Чирухин

Директор по коммуникациям с разработчиками (DevRel)

Команда Axiom JDK roman.karpov@axiomjdk.ru Команда Axiom JDK logo Axiom Committed to Freedom 199 Obvodnogo Kanala Emb. 190020 St. Petersburg RU +7 812-336-35-67 Команда Axiom JDK 199 Obvodnogo Kanala Emb. 190020 St. Petersburg RU +7 812-336-35-67