At the moment, I am using AppSync GraphQL as a single endpoint to query or update data for a web app I am developing. I am planning to combine or execute some queries via Lambda for some tables that involve business logic as the one described in the scenario below. Just want to know if this is still best practise, should all queries be executed from AppSync OR Lambda? Can I combine them both? What would be the cheapest option with a great architecture?
Options:
A. Angular (frontend) > AppSync GraphQL > DynamoDB
B. Angular (frontend) > Lambda > DynamoDB
C. Angular (frontend) > API Gateway > Lambda > DynamoDB
App type: Social Network
Scenario: User A has blogs that can only be seen by followers. User B does not follow User A so no blogs should be displayed to User B.
Criteria for best option: Pricing, Performance, and Architecture best practises