Problem:
Our REST API is for requests for static images and requests for other computationally intensive tasks, such as rendering new images.
We noticed that our Apache-Django server gets bogged down on some rendering requests, and thus is unable to fulfill the more frequent and simple static image requests.
Basic outline of a solution:
Server 1 parses the URL requests and decides whether if the request is a static image request for passing to Server 2 or rendering request for passing to Server 3.
Server 2 and Server 3 then send the response back to the client.
We use AWS.
Questions:
Should Apache-Django be used for all servers above?
Should CloudFront be considered an alternative for Server 2?
Can Server 1 be handled by somehow extending AWS Load Balancer?
What more should I research?