7 ms·
I've spent some time reading the docs and still don't understand what Dapr is. Is it something like jBoss Fuse but for cloud era? Of course, I'm not entitled t
by sesm 6y ago
I've spent some time reading the docs and still don't understand what Dapr is. Is it something like jBoss Fuse but for cloud era?
Of course, I'm not entitled to good documentation for open source project, I realise it. But let me just share my personal preferences.
When I encounter new library/framework/service I want to know 2 things:
1. What problem(s) does it intend to solve?
2. What are the closest alternatives and how this thing compares to those alternatives?
In most docs I encounter it's either hard or impossible to find this information.
- asim 6y agoDapr's solving distributed systems development at scale. Basically as you grow your team from a handful of people to many separate teams all working on different products, the technical architecture also evolves from monolith to SOA and then microservices. It's the natural logical evolution of anything at scale. Dapr is attempting to provide the primitives you'd need to build any sort of software at scale. Usually this buckets into; authentication/authorization, configuration, data storage, pubsub messaging and a handful of other things. Full disclosure: I'm the author of Micro (https://github.com/micro/micro https://github.com/micro/micro) which bakes in the same primitives but also focuses solely on development in the Go language.
- regularfry 6y agoYes, but what is it? A set of libraries? Container config? A cli tool? You need to dig quite far through the docs to find that out.
- asim 6y agoIt is a server which sits alongside your application. You can access it via http or grpc. They additionally provide multi-language sdks for it. Think database + sdks but for distributed systems.
- e12e 6y ago> It is a server which sits alongside your application. You can access it via http or grpc. Why? If I have microservice A and B - how is A and B different/better with this sidecar?
- reifnir 6y agoIt is a sidecar which sits alongside your application. You can access it via http or grpc. They additionally provide multi-language sdks for it. Think database + sdks but for distributed systems. Most importantly to me, it offers both REST and interface-based programming models allowing the consumer to decide how they want to operate with it.
- andendau 6y agoIt is a microservice chassis https://microservices.io/patterns/microservice-chassis.html https://microservices.io/patterns/microservice-chassis.html At scale you have lots of teams writing their own boiler plate and getting it right or wrong. This solves that at the application level. Steel toe is another option by pivotal. You can see an example of how cross cutting concerns can be solved in this mindmap https://www.alanmbarr.com/blog/images/cross_cutting_concerns.jpg https://www.alanmbarr.com/blog/images/cross_cutting_concerns...