2016-03-30 3 views
3

Я ищу способ использования Spring Data Couchbase для подключения к двум отдельным кластерам Couchbase. Рассматривая документацию и реализацию, неясно, как это сделать, и моя забота заключается в том, что будут конфликты имен bean, если они имеют две конфигурации, которые расширяют AbstractCouchbaseConfiguration. Единственное, что выглядит близко, это использовать RepositoryOperationsMapping, чтобы указать разные шаблоны для разных хранилищ. Это, однако, не соответствует моим потребностям, так как каждая из конфигураций Couchbase не будет знать о другой. Единственное средство, которое я вижу в этом сейчас, - либо не использовать AbstractCouchbaseConfiguration, а настроить мои собственные компоненты или переопределить все компоненты в AbstractCouchbaseConfiguration и предоставить новые имена bean-компонентов. В каждом случае я бы переопределил имя бина шаблона couchbase в аннотации @EnableCouchbaseRepositories. Тем не менее, я не уверен, что это сработает или если есть лучший вариант.Используйте Spring Data Couchbase для подключения к различным кластерам Couchbase

Возможно ли это, и если да, то какой лучший маршрут для меня взять?

Спасибо

ответ

0

Не могли бы вы подробнее остановиться на прецеденте, что оправдано создание и подключение к двум отдельным кластерам?

Лучший маршрут здесь еще возможно определить новые Cluster, Bucket и CouchbaseTemplate боб, с помощью пользовательских имен, в существующей AbstractCouchbaseConfiguration, а затем использовать метод configureRepositoryOperationsMapping() в конфе. В основном, как описано в the doc about multiple buckets, но добавление в смесь второго компонента Cluster.

+0

Вариант использования - это общая библиотека, которая используется несколькими проектами. Эта библиотека предоставляет службу, которая поддерживается данными в сконфигурированном кластере CB. Конфигурация компонентов, используемых службой, находится в самой библиотеке. Если один из таких проектов должен использовать библиотеку, а сам должен читать/записывать данные из другого кластера CB, то, полагая, что оба они используют SD-CB, и у них есть конфигурации, которые простираются от AbstractCouchbaseConfiguration, тогда будут конфликты с bean-компонентом имена. – loesak

Смежные вопросы