Service Fabric
Do you have an idea, suggestion, or feedback based on your experience with Azure Service Fabric? We would love to hear from you.
Please take a few minutes to submit your feedback in one of the forums available on the right or vote up an idea submitted by another Azure Service Fabric customer. All the feedback shared in these forums are being monitored and reviewed by the Microsoft Azure Service Fabric team.
Please remember this forum is for Azure Service Fabric, and if you have feedback on other Microsoft products, services or platforms, please submit your feedback in the appropriate forum (found on the right hand side).
Thanks for your feedback – we look forward to improving your satisfaction with Azure Service Fabric
-
Reliable pub-sub framework
Pub-sub is a common pattern in cloud applications. It would be great to have a reliable implementation of it out of the box.
693 votes -
Actor model communications must implement reliable messaging
At the moment when using ActorModel you may get duplicate messages sent from the client when client gets communication errors or server failure. That in fact means that in the every actor you have to have a logic that will need to understand if message was processed already ot not. This is a standard problem and must be handled by Fabric insfastructure by implementing "reliable messaging". So the framework should detect if it is a duplicated message that already been delivered & processed or not.
328 votes -
Support Reactive Extension (RX) 3 API
Support of RX 3 API
https://github.com/Reactive-Extensions/Rx.NET
can reduce service communication when subscribing to remote queryActor should be able to subscribe for changes made by other Actors
(like the case with Orleans)
Support Rx API will dramatically improve Complex Event Processing
on multi Actors fabric.297 votes -
Open Source Service Fabric
Following the pattern of many other development resources from Microsoft, it would be amazing to see Service Fabric open sourced, so that others can modify, improve and view it.
277 votes -
Lower end pricing to get familiar with the framework in Azure
I was really hoping there would be a low tier option to Develop on for those of us with limited infrastructure. I went to spin up a cluster and start playing today, but the minimum was 5 A1 VMs which would be over $200. Any chance we could get a lower end tier or tone it down to 1 VM to get familiar with the platform with the ability to scale it out?
240 votesTo try out the platform, you could use the party cluster service we set up for free:
http://aka.ms/tryservicefabricFor a one VM deployment, an alternative is just trying it on your development box itself.
We will consider though having a lower-tiered cluster.
Mani Ramaswamy
Program Manager
Azure Service Fabric -
Improve deployment speed for ASP.NET 5 projects
I noticed ASP.NET 5 applications takes a long time to deploy and debug. About 1-2 minutes on my computer on a brand new project. This should be better optimized to load faster
188 votes -
Packaging System for Applications & Services
Currently, Fabric apps are folders containing Fabric services, tied together by a manifest and Fabric services are folders containing packages (code, config, data), tied together by another manifest.
This works alright when apps and services are developed within a company/team and not broadly distributed, but it falls apart when trying to distributed things more broadly.
For example, what if I wanted to distributed fabric versions of Redis, Elastic Search, or Orleans?
This proposal is to create a system which lets us package and distribute applications and services similarly to NuGet.
160 votes -
Dependency Injection in services and actors
As the heading states. Support DI frameworks in the programming model.
148 votes -
Provide tools for inspecting reliable collections
If I'm going to move some of my core application state from an external state store to reliable collections, I would like to have equivalent tools for inspecting that state apart from the VS debug window.
144 votes -
Bind Load Balancer to Services (for hosting ASP.NET projects on limited amount of nodes)
Service Fabric should be able to create/configure Load Balancers for certain services and it should synchronize the Load Balancer in case of placement changes.
Right now there is one load balancer configured for the whole cluster. This means, every service that should be accessible through a public endpoint must be placed on every node. This is a waste of resources in cases where these services don't need this scale-out factor. This means, these services are wasting RAM, disk space and CPU and it also takes longer to update these services.
Desired scenario: The cluster has 5 VMs, WebApp-1 is placed…
119 votes -
Unit test Actors
I would like to be able to create unit tests for the Actors without spinning up a cluster. Something like:
[Setup]
public void Setup(){
ActorTestProxy.Setup<IMyActor>(new MyActorImplementation);
ActorTestProxy.Setup<IMyActorDependency>(new MyActorDependencyMock);
}[Test]
public async void ActorTest()[
IMyActor actor = ActorTestProxy.Create<IMyActor>(0, "test");
var result = await actor.Foo("hep");
Assert.NotNull(result);
}113 votes -
Ability to stop/disable services without removing them
Right now, as soon as a service gets deployed to Service Fabric, it will start immediately and the only way to stop it is to completely remove the service. In case of a stateful service, this would also remove the data.
However, there are scenarios, where stopping/deactivating a service - without removing it - is important:
* Troubleshooting: If the service is not behaving correctly, we might want to stop it. (it's not always possible to do a rollback)
* Scheduled services, which should not run all the time
* Planned downtime: Although against the idea of Service Fabric, there…
100 votes -
Enable event driven programming
Allow triggers from Azure resources (Storage, DB, Websites, etc) to execute a micro service or app. Similar to the way AWS Lambda does this (e.g. when a new raw is added or modified on a DB, a new file is added to Azure storage, a website goes down, etc).
83 votes -
Stateful Web API service template
Out of the box Azure Service Fabric does not have Stateful Web API service template. I would like to have that.
Here is related stackoverflow question http://stackoverflow.com/questions/37842425/stateful-web-api-service-in-service-fabric-in-vs-2015-update-2
80 votes -
Improve deployment performance
Overall, this framework is amazing, and I love it. However, the one drawback is the turnaround time for slight tweaks. I'd love to have a debug-only hotswap which deployed much faster. Maybe something like: pause the cluster failover monitoring, halt all of the running services for an application, deploy code changes, start them again, and resume failover monitoring.
74 votes -
Cross Actors/Services Transaction
Support cross Actors/Services transaction
71 votes -
Ability to customize rollout of new versions.
I want the ability to control how quickly a new versions of services are rolled out and what percent of load gets sent to them.
For example, I want 10% of the load to hit the new version for 1 hour before it is rolled out to any more nodes.
68 votes -
MultiDatacenter & Multi Region Support in Azure Service Fabric
At this moment Azure Service Fabric allow us to deploy a cluster in single region. (Need to specify region)
How we can have multi region deployment so we can failover and performance improvement by deployment to near data-center. Document state that a cluster publish in single data center on deployment so again this is again leads to get system down on something wrong to data center.
Can you please update me if this is your plate to work on and is this feature is coming soon.
66 votes -
Support continuous integration on build machines without the SDK installed
To build service fabric applications (*.sfproj) a MS Build `.props` and `.target` file are required. Those files are installed by the Service Fabric SDK. This presents a challenge in continuous deployment pipelines (ours is on Team Build) where a best practice is to keep build machines in a known, clean and maintainable state.
We would like to build Service Fabric apps in Team Build, but we don't want to install a specific version of the Service Fabric SDK onto those machines.
One solution could be to package the service fabric build artifacts as a nuget package, and then have `*.sfproj`…
65 votes -
Expose low level stateful apis
Sql azure and DocuDB are built on service fabric but use a lower level api for its stateful IO, please expose those apis for other apps as well
56 votes
- Don't see your idea?
