Why 2 Servers and how to use in a Single Application?



I am a bit confused with Prisma. I thought we had a bit of control, to do say aggregations etc. since we could potentially do raw queries… but it seems like there are 2 distinct servers running … anything we need to custom, would be a second server which is not deployed to Prisma Cloud … of course, that is my understanding and may totally be off.

With that if correct, If I have to deploy my own server that has custom business logic, what is the point of Prisma?

Why would I pay for Prisma Cloud and then also have to pay to host my own server in AWS Lamba or EC2/EC2 Container Service? Seems like if I have to pay to host my own server (custom queries and mutations) why not just write the CRUD stuff myself and save money? Of course, I absolutely love Graph.Cool and Prisma as a developer since it allows me to focus on the application itself rather than writing all that boilerplate over and over for every table.

Also, I guess one last question, with having 2 servers, I assume I would have to create 2 Apollo Clients with different endpoints as to were to get it’s data… seems to kind of defeat the purpose of GraphQL…

Are you assuming we use resolver-forwarding for each and every CRUD operation Prisma creates? If so, could we have Prisma generate that for us? That way we can have just one server that forwards to Prisma as needed and we take control on some resolvers that need custom business login or aggregation.