Да, существуют реализации Распределенного Реестра Сервисов, которые используют SQL и/или RabbitMQ.
Одним из способов реализации Distributed Service Registry с использованием только NuGet пакетов, SQL Server/PostgreSQL и RabbitMQ, без стандартных провайдеров Service Discovery, может быть создание базы данных для хранения информации о зарегистрированных сервисах и использование RabbitMQ для обмена сообщениями между сервисами.
Пример такой реализации может быть следующим:
1. Создание таблицы в базе данных (SQL Server/PostgreSQL) для хранения информации о сервисах (например, название сервиса, IP адрес, порт и т.д.).
2. При запуске каждого сервиса, он должен зарегистрировать себя в базе данных, добавив соответствующие данные о себе.
3. Для обмена информацией между сервисами, можно использовать RabbitMQ, где каждый сервис будет публиковать сообщения о своем состоянии и получать сообщения от других сервисов.
4. При необходимости обновления информации о сервисах, каждый сервис может мониторить изменения в базе данных и обновлять свою локальную копию данных.
Такой подход позволит реализовать Distributed Service Registry используя SQL и RabbitMQ. Однако, стоит учитывать, что данная реализация может быть менее эффективной и не такой масштабируемой, как использование стандартных провайдеров Service Discovery.
Примеры конкретных реализаций на основе SQL и RabbitMQ могут отличаться в зависимости от конкретных требований и особенностей проекта.