RSS Весна
Подписаться
Основные функции Spring для обеспечения отказоустойчивости: @ConcurrencyLimit, @Retryable и RetryTemplate
Эта статья в блоге анонсирует новые функции устойчивости в Spring Framework 7.0, включая ограничение параллелизма и поддержку повторных попыток. Ограничение параллелизма помогает защитить ресурсы, ограничивая одновременный доступ, что особенно полезно с виртуальными потоками. Эта функция может быть настроена программно или декларативно с помощью аннотации @ConcurrencyLimit. Spring Framework 7.0 также представляет встроенную поддержку повторных попыток, вдохновленную проектом Spring Retry. Декларативная повторная попытка доступна через аннотацию @Retryable, которая может быть настроена с различными политиками повторных попыток и обработкой исключений. Программная повторная попытка предлагается через RetryTemplate, позволяя гибко настраивать произвольные блоки кода. И @Retryable, и RetryTemplate поддерживают настраиваемые попытки повтора, задержки и фильтрацию исключений. Примечательно, что @Retryable также совместим с реактивными методами. Несколько проектов портфолио Spring переходят на эту новую базовую поддержку повторных попыток. Разработчикам рекомендуется попробовать эти функции и предоставить обратную связь. Более подробную информацию можно найти в справочном руководстве и Javadoc.