Несколько экземпляров собственной службы WCF

У нас есть «работник» служба, запущенная из консольного приложения в c #, для разработки мы всегда запускали один экземпляр этой службы, которая выбирает порции данных и выполняет некоторые вычисления, эти порции данных предоставляются другой службой (которая отслеживает, сколько данных осталось так далее.)

Теперь в QA мы хотим запустить несколько экземпляров & quot; worker & quot; обслуживание одновременно (на одной машине). Однако мы получаем исключение, как только запускается второй экземпляр:

The TransportManager failed to listen on the supplied URI using the NetTcpPortSharing service: the URI is already registered with the service.

Мы используем netTcpBinding, а адрес конечной точки жестко закодирован в app.config и остается неизменным, и поэтому я предполагаю, что мы получаем эту ошибку.

<services>
    <service behaviorConfiguration="CoreBehavior" name="WorkerService">
        <endpoint address="net.tcp://localhost:8001/WorkerAssignment" binding="netTcpBinding" contract="IWorkerService" bindingConfiguration="CoreTcpBinding"/>
    </service>
</services>
<bindings>
    <netTcpBinding>
        <binding name="CoreTcpBinding" portSharingEnabled="true">
            <security mode="None"/>
        </binding>
    </netTcpBinding>
</bindings> 

Код приложения:

var host = new ServiceHost(typeof(WorkerService));
host.Open();

Как мы предоставляем разные URI для каждого экземпляра, чтобы по крайней мере порт оставался прежним?

ИЛИ Есть ли другой способ запустить несколько экземпляров одного и того же сервиса?

Ответы на вопрос(3)

Ваш ответ на вопрос