-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Usability of SiloHostBuilder #3680
Comments
Hi, this is actually the biggest piece we are tackling for 2.0 since the beta was released. Right now the providers are in a very weird spot, but we plan to address them very soon. We'll try to provide a simple migration path, but until it's fully done, it's a little hard to reason about what will be required for our 3rd party providers. I'd recommend you follow the upcoming PRs, because as I mentioned, these are the biggest features that remain for 2.0. I hope that even if not final, this response can help understand the short-term roadmap. |
Hello SebastianStehle, We're committed to retaining support for the legacy providers (classes inheriting from IProvider). While there may be some minor breaking changes (hopefully not), for the most part we expect any providers that worked in 1.5.x to continue to work in 2.0. So the safest path available at this time is to code your provider to run against 1.5.x. If, however, you want the provider to conform to the 2.0 preferred patterns, you'll need to develop it against the dev branch after PR #3738 has been merged, as it has the necessary infrastructure to support the new patterns. We suspect that PR will go in sometime this week, and we'll start porting (likely later this week, early next week) our supported providers to the new pattern after it goes in. Hopefully, our ports will serve as a working example. While this is still in flux, the pattern (so far) for future providers is for them to be registered as named services in the container, while also taking part in the silo lifecycle. The provider initialization and shutdown will be controlled by the silo lifecycle as specified by the provider configuration. This ‘should’ provide all of the benefits of the legacy provider model with more flexibility, and less overhead. Since we plan to port some, if not all, of our supported providers to this pattern prior to the 2.0 release, we’ll be dog-fooding this pattern prior to expecting others to work with it. |
Hello SebastianStehle, As a reference pattern, please take a look at AzureTableGrainStorage.
|
This is done in 2.0.0-rc1. |
Hi,
We are about to finalize the MongoDB provider for Orleans 2.0 (https://github.com/OrleansContrib/Orleans.Providers.MongoDB) and there is some confusing about the SiloHostBuilder and IProvider interface.
Orleans
?I think an method like the following would be good. It should run very last and must therefore implemented within the SiloHostBuilder
I know that the final configuration model is in an state between the old and new system but it would be helpful to understand the plans.
The text was updated successfully, but these errors were encountered: