docs icon indicating copy to clipboard operation
docs copied to clipboard

unsubstantiated claim regarding how dapr reduces resource consumption for an application

Open darraghjones opened this issue 1 year ago • 2 comments

Describe the issue The docs at the URL below include a note that since "Since Dapr is intended to do much of the I/O heavy lifting for your app, the resources given to Dapr drastically reduce the resource allocations for the application."

However, it's not clear to me how such a conclusion was reached. My understanding is that a the application still needs to communicate with dapr over the (local) network.

URL of the docs https://docs.dapr.io/operations/hosting/kubernetes/kubernetes-production/

Expected content Some evidence to back up this claim would be useful. Also, exactly what 'drastically' means could be more clearly defined.

Additional context I'd like to believe the claim, but as is, it is made without much evidence.

darraghjones avatar Jun 15 '24 21:06 darraghjones

I'm still none-the-wiser how the "...the resources given to Dapr drastically reduce the resource allocations for the application."

if without dapr, i have service A invoking an endpoint on service B....how does adding dapr, whereby service A now invokes it's local dapr sidecar, which in turn inovkes the service B dapr sidecar which then invokes service B, reduce the resource capacity i need to allocate to either service A or B?

apologies if i'm missng something obvoius 🤔

darraghjones avatar Jul 10 '25 17:07 darraghjones

If you have an app that talks to Kafka directly, it will consume CPU and memory needed for these interactions. By moving this logic to Dapr, the app requires less resources as it no longer interacts with Kafka itself. More specifically, we've observed with I/O heavy languages like Java and Python that Dapr and it's usage of goroutines is able to use less CPU and memory than a Python and Java app while doing the same work.

yaron2 avatar Jul 10 '25 17:07 yaron2