1,059 votesEdward Mindlin commented
I up-voted this but found I was able to implement this using RabbitMQ on-premise as the "pub sub" engine. A WCF-Custom Binding for services made it easy to publish a message using the WCF-Custom RabbitMQ Client Binding, and then have multiple WCF based services in Service Fabric using a custom listener bound to RabbitMQ fo "subscribed" messages... Some scenarios had both the WCF-Custom client and service side bindings both running in Service Fabric. This worked both on-premise and hosted in Azure...
954 votesEdward Mindlin commented
This is also important when you have services that communicate in real time with third party endpoints that undergo maintenance or downtime and as an admin just want to "pause" manually while the third party is unavailable. This prevents unwanted health alerts and false positives in alerting and monitoring systems that might generate support tickets and SMS/pages... I ended up implementing the feature (only for Actors) using a custom Web API over the top of custom Actor interface. All of the Actor Service "State" management (ie STARTED, STOPPED, STOPPING, etc.). had to be implemented in the Actor. This should be baked into the Fabric and available from the SF Admin rather than having to write a custom UI to manage the starting/stopping of the Actor/Roles...