abpframework / abp

Open-source web application framework for ASP.NET Core! Offers an opinionated architecture to build enterprise software solutions with best practices on top of the .NET. Provides the fundamental infrastructure, cross-cutting-concern implementations, startup templates, application modules, UI themes, tooling and documentation.
https://abp.io
GNU Lesser General Public License v3.0
12.92k stars 3.44k forks source link

Dapr integration #2183

Closed geffzhang closed 2 years ago

geffzhang commented 4 years ago

In the Dapr .NET SDK:https://github.com/dapr/dotnet-sdk , you'll find asP.NET Core integration, which brings a state routing controller that responds to publish/subscribe events for other services

xdmushui commented 4 years ago

I think if abp.io can integrate Dapr, that would be the best. @geffzhang Do you have any good ideas or designs for integrating Dapr?

xewn commented 4 years ago

Is it feasible to automatically generate actor server and client through applictionservice? Make some conventions for actors in Application.Contracts to facilitate the generation of actor server

geffzhang commented 3 years ago

Discover that the dotnet team is writing a dapr for dotnet developer e-book https://github.com/dotnet/docs/tree/master/docs/architecture/dapr-for-net-developers

geffzhang commented 3 years ago

https://blog.dapr.io/posts/2021/02/17/announcing-dapr-v1.0/

leonkosak commented 3 years ago

@hikalkan would you consider using dapr also for microservice template (abp Commercial)? It should greatly simplify overall architecture, right?

mooresway commented 3 years ago

Maybe Project Tye as well?

Looks like another ms experiment headed towards official status.

volethanh commented 3 years ago

Hi @hikalkan , Do you have any plan to integrate Dapr and What release version do you plan ?

hikalkan commented 3 years ago

Hi,

In the next milestone (~2 weeks later) we will start to investigate integration possibilities with dapr. As I see, there are some common features with the ABP Framework. When you use the ABP framework, inter-microservice method invocation is simpler than dapr usage. ABP has distributed cache and distributed event bus systems those are easy to use. I mean you have have less need to a tool like dapr with the ABP framework, comparing a solution without ABP. You can currently use dapr in your ABP solutions (I didn't try, but I don't see any opposite reason). However, we will work more to understand the value that we can add a dapr integration when it works with the ABP. If you have any suggestions, it is appreciated.

We are currently integrating Tye (actually, not hard, you can do it easily), it will be available with the next release.

geffzhang commented 3 years ago

There are at least a few aspects of dapr integration value ,dapr allows you to use part of the content, not all of it 1、dapr actor 2、grpc

Shawn-Fan commented 3 years ago

Dapr is a multi-language supported runtime in the kubernetes/local development environment. The sidecar(can be used by http and grpc) is the kernel part of the runtime, Dapr affords basic connection to different state storage(redis, cosmos DB, ...), pubsub(redis, nats, kafka,...), autoscale(keda), Actor(so far, only http), and so on... The key point is that if ABP framwork want to be applied onto kubernetes, it is based on building your own kubernetes enviroment or Dapr.

geffzhang commented 3 years ago

The abp eventbus for dapr has been adapted https://github.com/geffzhang/EasyAbp.Abp.EventBus.Dapr

Shawn-Fan commented 3 years ago

cool!

colinin commented 3 years ago

The invocation of Dapr.Acotrs can be simplified by using interceptors, Like Volo.Abp.Http.Client

gdlcf88 commented 3 years ago

image

Hi, may this issue should be moved to the 5.0-preview milestone?

geffzhang commented 3 years ago

See this dapr integrated module https://github.com/colinin/abp-vue-admin-element-typescript/tree/master/aspnet-core/modules/dapr

hikalkan commented 3 years ago

We can't able to work on this in v5.0. We will revisit this later and decide how we can integrate to dapr, or should we integrate.

xdmushui commented 3 years ago

We can't able to work on this in v5.0. We will revisit this later and decide how we can integrate to dapr, or should we integrate.

A little down to hear this news.

pangjianxin commented 2 years ago

is there any news about this issue???

maliming commented 2 years ago

No, still in the backlog.

0andy commented 2 years ago

Will abp still consider integrate with Dapr? thx

hikalkan commented 2 years ago

We've started investigation for this integration. Branch name is https://github.com/abpframework/abp/tree/dapr-integration

hikalkan commented 2 years ago

Moved this to https://github.com/abpframework/abp/issues/13337