✅ Failed to bind to address http://127.0.0.1:5196: address already in use
Hi firends,
I'm working on a project using Microservices, I use
RabbitMQ
as the message broker, and the MassTransit
as the abstraction layer over the RabbitMQ
.
I have a service called AuthService which uses the RabbitMQ
, another service called ExpenseService.API
also uses the same RabbitMQ
in appsettings.json
of both services/projects have the same follwing RabbitMQ
options
in the program.cs
of ExpenseService.API
I have this part which configure the project to be a consumer/subscriber :
When I start AuthService
then ExpenseService
I get this exception :
Exception has occurred: CLR/System.IO.IOException An unhandled exception of type 'System.IO.IOException' occurred in System.Private.CoreLib.dll: 'Failed to bind to address http://127.0.0.1:5196: address already in use.' Inner exceptions found, see $exception in variables window for more details. Innermost exception System.Net.Sockets.SocketException : Only one usage of each socket address (protocol/network address/port) is normally permitted.Please I hope someone to provide a help here and massive thanks in advance
10 Replies
You have two or more listeners on the same port. Its as easy as that.
listeners means apps ?
could be.
are your microservices using http listeners? in that case, yes
check the logs of each service
asp.net prints the port its listening on in each service
Yeah the
AuthService
is running on http://localhost:5196/
and when I start the ExpenseService
I get the exception I mentionnedright
so they are trying to listen on the same port
thats a no-go, so you need to change the launch settings for one of them
Unknown User•16mo ago
Message Not Public
Sign In & Join Server To View
very cool powershell script, wont help here thou 😄
hmmm, you mean exactly the port ?
Unknown User•16mo ago
Message Not Public
Sign In & Join Server To View
@TeBeClone Yeah, very clear, I really appreciate your help and time man