Вопрос или проблема
Я хочу изменить разделитель имени назначения привязки. Например, дано имя потока “inflow” и имя приложения “parsing”,
Я хочу изменить inflow.parsing на inflow-parsing.
Могу ли я это сделать?
Эти имена генерируются Spring Cloud Data Flow при создании потока, и нет возможности установить пользовательский разделитель. Вы можете переопределить свойство приложения app.XYZ.spring.cloud.stream.bindings.input.destination
и/или app.ABC.spring.cloud.stream.bindings.output.destination
при развертывании приложения. Вам придется выбрать свои собственные имена для очередей, а затем использовать их в качестве выхода для источника и входа для процессора и т. д.
.
Ответ или решение
Изменение правила именования привязок в Spring Cloud Data Flow: возможно ли это?
При использовании Spring Cloud Data Flow вы можете столкнуться с необходимостью настройки имен привязок для ваших стримов и приложений. В вашем случае вы хотите изменить разделитель между именем потока и именем приложения с точки (.) на дефис (-), чтобы, например, стрим с именем "inflow" и приложением "parsing" стал "inflow-parsing".
Текущая ситуация
Spring Cloud Data Flow автоматически генерирует наименования для привязок (bindings) на основе ранее определенных правил. При создании стрима именование привязок происходит с использованием разделителя точки, что приводит к получению названия, формируемого по формату inflow.parsing
. К сожалению, стандартные настройки не предоставляют возможности изменения этого разделителя в самом процессе генерации имен.
Альтернативный подход
Однако у вас есть возможность переопределить имена привязок, используя свойства приложения. Это можно сделать с помощью изменения значений параметров конфигурации:
-
Для входящего потока:
app.XYZ.spring.cloud.stream.bindings.input.destination=your_custom_queue_name
-
Для исходящего потока:
app.ABC.spring.cloud.stream.bindings.output.destination=your_custom_queue_name
Это позволит вам задать собственные имена очередей (queues) и соответственно их использовать как вход для обработчиков и выход для источников.
Как реализовать
Чтобы реализовать этот подход, выполните следующие шаги:
-
Определите ваши собственные имена для очередей: Например, вы можете использовать
inflow-parsing
или любое другое название, соответствующее вашим требованиям. -
Настройте конфигурацию приложения: В файле
application.properties
илиapplication.yml
вашего Spring Boot приложения указать необходимые параметры. Например:spring.cloud.stream.bindings.input.destination=inflow-parsing spring.cloud.stream.bindings.output.destination=inflow-parsing
-
Перезапустите приложение: После внесения изменений в настройки необходимо перезапустить ваше Spring Cloud Data Flow приложение для применения новых конфигураций.
Таким образом, хотя Spring Cloud Data Flow не позволяет напрямую модифицировать правила именования с предустановленными разделителями, вы можете использовать переопределение параметров назначения привязок для достижения нужного результата.
Заключение
В итоге, изменение правила именования привязок напрямую невозможно, но с помощью кастомизации своих параметров можно задать нужные имена для проектов. Данный подход обеспечивает гибкость и контроль, позволяя адаптировать систему к специфическим требованиям вашего проекта.