एका प्रणालीमध्ये, घटक (सेवा, क्लायंट) APIs आणि विविध प्रोटोकॉलद्वारे संवाद साधतात — सिंक्रोनस (REST, gRPC) आणि असिंक्रोनस (मेसेजिंग/कतार). घटक कसे संवाद साधतात हे समजून घेणे हे अनेक भागांनी बनलेल्या प्रणाली डिজाइन करण्यासाठी मूलभूत आहे.
सिंक्रोनस संवाद (विनंती/प्रतिसाद)
The caller WAITS for a response (blocking):
REST (HTTP) → most common; resources over HTTP (JSON) → simple, ubiquitous, web-friendly
gRPC → high-performance RPC (binary, HTTP/2) → fast, typed; good for internal services
GraphQL → flexible queries (client requests exactly what it needs)
→ for: direct request/response where the caller needs an answer now
