i have 3 projects for my microservices :
Identity service and activity service are both subscribed to few messages using rabbitMQ.
I don't know proper way to deploy them on window server.
should i use
IIS, nix services.dll, Windows Services, dotnet cli
if i run them on IIS, are they always subscribed to messages ( does it keep application running to handle subscriptions?). is dotnet service.dll ok for production or do i need something like iis or nginx.
IIS is good enough for you case.
You can configure the IIS to run your service soon as you deploy it, and it will continue to listen to your RabbitMQ.
Although if you have a service that communicates with other Services using only RabbitMQ I would rather build it as WindowsService.
Hope this helps