3 ms·
But then I look e.g. at your weather microservice, and see again a (configurable, but still expecting some already standardized format) wrapper around an existi
by throw827474737 4y ago
But then I look e.g. at your weather microservice, and see again a (configurable, but still expecting some already standardized format) wrapper around an existing API that once more mingles the data all around?
Sorry, but really not getting what this is achieving/solving?
- asim 4y agoBuilding a standard set of interfaces consumed as APIs regardless of what the backend implementation is. Something that exists on a network rather than as a library that can be executed and changed ad-hoc without having to upgrade thousands of binaries. It also provides opportunities to do far more interesting things with the data when you have enough users at scale e.g predicting demand, caching data, etc.
- throw827474737 4y agoWhat is the standard you built, how is it specced? In code that I just looked at? Man I feel old and stupid, but really still not got it any further :( You made it even worse now.. "lives on the network.. without updating thousand binaries" - huh what, how? You sound a bit like Urbit btw, not sure if appropriate ref though.
- asim 4y agolol, really don't want to be in the same sentence as Urbit so please no. Everything is defined as protobuf interfaces, which is a standard used by Google and everyone else now that gRPC is so dominant. So the idea is, define the API in protobuf, code generate and implement the handlers for it. The service can be called by other services on the platform using that code generation and then an API Gateway, which Micro provides can be used to call services externally using the same format but using HTTP/JSON. To take that even further, M3O (m3o.com) codifies protobuf to openapi specs and then generates client libraries on top. You can see some of that in https://github.com/m3o/m3o https://github.com/m3o/m3o.
- davidjfelix 4y agoTotal tangent, but gRPC is not dominant and I think that belief is cargo-cultism.
- simonw 4y agoYeah I've managed to avoid gRPC for my whole career to date, and I've done a LOT of work on web services and microservices.
- throw827474737 4y agoThanks, that made now more sense. I'd put this condensed together with https://micro.dev/blog/2022/09/27/real-world-micro-services.html https://micro.dev/blog/2022/09/27/real-world-micro-services.... more prominently to the readme of https://github.com/micro/services https://github.com/micro/services ! Looking at that github alone makes it hard to commect the context.
- asim 4y agoThanks I will do that!