Hi
I'm trying to implement the following scenario:
- Several WorkerRoles hosting a SOAP and REST services on http Input endpoints
- Several WebRoles with one http Input endpoint. Communicating WorkerRoles through Input endpoints.
Following this tip:
http://code.msdn.microsoft.com/WCF-Azure-Worker-Role-on-b394df49
I've managed to register http Input endpoints on WorkerRole instances. However when I tried to run multiple worker instances on emulator I got an error exception:
System.ServiceModel.AddressAlreadyInUseException: HTTP could not register URL http://+:
To solve that issue I needed to set the HostnameComparsionMode to Exact. But then I started getting 405 Method not allowed when I tried to access the endpoints through load balanced endpoint (on emulator 127.0.0.1:port).
All endpoints are reachable on the internal endpoints (127.255.0.x:port).
The question is how can I have Http Input endpoints emulated on multiple WorkerRole instances ?
Example Solution to reproduce problem:
https://www.dropbox.com/s/378oaqotdp0axen/HttpRolesTest.zip
UPDATE:
Setting HostnameComparsionMode to StrongWildcard solves problem for the real Azure.
However I am still not able to test several Worker roles with Http Inputs on emulator. According to
this blog load balancing does not work correctly with WCF endpoints with HostnameComparsionMode.Exact. Does anyone know why it is not possible to use HostnameComparsionMode.Exact ?