3 ms·
Although the microservices terminology might have been invented by a software consulting firm, distributed architecture already existed and solved problems for
by alisonatwork 4y ago
Although the microservices terminology might have been invented by a software consulting firm, distributed architecture already existed and solved problems for many large companies that needed to scale their products (and development processes) beyond what a small team hitting a single database could achieve.
However, I think that's the key point to keep in mind when considering whether GraphQL is a good fit - if you don't already have multiple domain-specific services in your infrastructure, then adding a GraphQL gateway service doesn't make a huge amount of sense to me, because you could've just had your small team of front end developers talk to your small team of back end developers to create exactly the optimized endpoints they needed to solve the problem.
To me GraphQL really seems like a solution for an organizational problem, where there are dozens of teams who all maintain their own services and apps, and now a variety of front end teams want to combine different sets of data from services maintained by different sets of back end teams in a way that doesn't have alignment across the company as as far as deployment/release schedules go... Well now it makes sense to construct a flexible API schema maintained by and for front end specialists - it's just moving their already-existing data processing/join logic out of their various clients into a common server-side component.
- est 4y ago> because you could've just had your small team of front end developers talk to your small team of back end developers to create exactly the optimized endpoints they needed to solve the problem What you are describing is called BFF I guess. And apparently it's already out of date so let's again split BFFs into smaller parts. https://martinfowler.com/articles/micro-frontends.html#BackendCommunication https://martinfowler.com/articles/micro-frontends.html#Backe... I am not against services, it's organizational motivated "micro" services I am very afraid of.
- jrochkind1 4y ago> because you could've just had your small team of front end developers talk to your small team of back end developers to create exactly the optimized endpoints they needed to solve the problem. I think the OP (and many of the comments in this discussion) is about making a graphql endpoint for public consumption. if you are doing it solely for internal use, it does make sense that the "break even" point would be different.