This is more a question of theory in order to help me as a developer understand the process our sysadmins are going to use in app deployment to distribute our app. I'd really appreciate some insight, as it would help me plan for possible eventual pitfalls (and might end up as a valuable resource to others who have entry-level questions regarding the topic.)
Assuming there are several valid host machines that could answer any incoming HTTP request, what is the most basic approach to load balancing between them? My basic conjecture as a programmer would suggest probably something utilizing DNS, until traffic gets so high something more robust is required. I assume proxies are leveraged in some degree to check which hosts are busy answering ongoing processing and which ones are vacant.
I have an application data tier that is built entirely in Python using WSGI, and in testing it we've just utilized mod_wsgi in Apache. If one was to theoretically deploy this on several identical machines, all connected to the same databases/resources in the application layer, what would be the first order of business in spreading out requests to the overall domain across them? Just listing multiple A records in the dns?
I am sorry for the vagueness, just haven't been able to find a decent primer on the subject from a developer's standpoint. I appreciate the help!