Axiom JDK оптимизировали для архитектуры RISC-V

Axiom JDK оптимизировали для архитектуры RISC-V

Axiom JDK оптимизировали для архитектуры RISC-V

Компания Axiom JDK оптимизировала производительность Java-приложений и выпустила специальную версию Axiom JDK Pro Server для работы в системах на архитектуре RISC-V.

Данная оптимизация позволит эффективнее работать с высоконагруженными Java-приложениями на RISC-V и обеспечивать бесшовную миграцию Java-стека на перспективные решения.

Усовершенствованная среда исполнения Java содержит специализированные патчи для RISC-V IP-ядер участников российского Альянса RISC-V. В результате российская платформа Java Axiom JDK позволит запускать любые приложения, написанные на Java, которые могут работать на аппаратных решениях, соответствующих стандарту RISC-V.

Оптимизированная платформа Java Axiom JDK Pro Server для RISC-V уже предлагается для коммерческого использования. Речь идет о версиях с длительной поддержкой (LTS) JDK 17 и 21 и включает регулярные обновления безопасности.

Совершенствование Axiom JDK для систем на архитектуре RISC-V увеличивает потенциал российского ИТ-сообщества в создании импортонезависимых программно-аппаратных решений. Достоинствами архитектуры RISC-V является открытость, модульность и постоянно развивающаяся экосистема, включающая в себя все современные наработки в создании процессорных архитектур и программного обеспечения.

«Мы рады, что в России есть сильное сообщество Java профессионалов, заинтересованных в программно-аппаратных оптимизациях для развития открытых процессорных архитектур. Альянс RISC-V ожидает от сотрудничества с Axiom JDK улучшения качества поддержки RISC-V в отечественной платформе Java, OpenJDK, поиска новых архитектурных идей и развития профиля прикладных RISC-V процессоров RVA23, укрепляя базу для технологического суверенитета. Качественное решение даст весомые преимущества для заказчиков при формировании ИТ-стратегии на отечественном программно-аппаратном стеке и развитии систем на платформе Java, которая используется в подавляющем числе корпоративных систем в России», — сказал Сергей Якушкин, глава Технологического комитета Альянса RISC-V.

«Инженеры Axiom JDK ежедневно работают над тем, чтобы удовлетворять потребности отечественных разработчиков в Java-технологиях. Мы выпускаем регулярные обновления и улучшения, занимаемся локализацией, поддерживаем современные аппаратные платформы и постоянно инвестируем в развитие. Такая стратегия обеспечивает разработчиков полнофункциональным инструментарием для создания новых критически важных систем и миграции существующих на доверенный Java-стек. Мы гордимся, что можем предоставить российским компаниям все необходимые инструменты для безопасной и эффективной Java-разработки и подтвердить, что Java в России — это мы», — отметил Роман Карпов, директор по стратегии и развитию технологий Axiom JDK.

Зачем Яндекс Go создал отдельный язык для расчёта стоимости поездок

Цена поездки в Яндекс Go — это не расстояние, умноженное на минуты и километры. В расчёт вмешиваются геозоны, спрос, скидки, платные дороги, дополнительные остановки и требования вроде перевозки кота, велосипеда или лыж. Чтобы управлять этим хозяйством без бесконечных деплоев, разработчики вынесли алгоритм ценообразования из кода сервиса в собственный язык.

Как объяснили разработчики в статье на Хабре, прайсинг работает не только при заказе машины.

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

 

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

 

Сам алгоритм раньше можно было бы держать в C++, но он меняется в среднем дважды в неделю. Выкатка сервиса на 50 подов занимает около 40 минут, а лес динамических конфигов быстро превратил бы код в музей условных операторов.

Поэтому Яндекс разработал собственный DSL. В нём есть условия, функции, неизменяемые значения и fold вместо циклов. Правила собираются в последовательную цепочку: каждое преобразование получает текущую цену и параметры, а возвращает новый результат с метаданными. Грамматику описали через ANTLR 4, а верификатор Z3 проверяет, что программа не выдаст некорректную цену.

 

Теперь изменение алгоритма не требует пересборки сервиса, ошибочную версию можно быстро откатить, а каждый расчёт — воспроизвести по входным данным и промежуточным результатам.

 

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

RSS: Новости на портале Anti-Malware.ru