-
Notifications
You must be signed in to change notification settings - Fork 2k
Description
Firstly, I'd like to congratulate dapr community on the 1.0.0 release, this is a remarkable milestone!
I understand the community was busy with the 1.0.0 release recently, but right now might be a good time to take a cup of coffee and think about the future.🙂
What I'm interested in and like to discuss here is our future plans for dapr api: Do we have the intention to make dapr api a standard so that other sidecars/proxies could implement?
I've been playing with the dapr demos recently, and one thing that I'm really fond of is its possibility to truly realize Write once, Run anywhere, as dapr defines a very good abstraction layer between application code and the backend services. If every application could be sided with a dapr process/sidecar, then this would easily happen.
However, considering the real world cases: where we have different cloud providers, different legacy components and many other factors I could not possibly list, it would be very hard to make dapr available in every situation.
So I'm thinking why not we take a step forward and make the abstraction layer a standard? So that other cloud providers could choose to offer hosted dapr solution or their own solutions with the same api, and legacy components could also bridge to the same api. Then as an end user, we could safely program our application against the standard api and ship it to different environments with no code change.
I guess someone might raise the hand and say this sounds good but it looks like we don't need to do anything as the apis are already defined in the proto files. But what I'm thinking is if we do have the intention to make dapr api a standard, then it would be better to send more obvious signals(e.g. move proto files to a separate repo) or state our intention more clearly so that other sidecars/proxies could implement the dapr apis without concern, e.g. concerns of breaking changes, etc.
Looking forward to your ideas/comments on this topic!
BTW, I noticed there was a proposal(#816) to move dapr & daprclient proto files to a separate repo but it was closed with no comment...