I don't think you can do this easily on one system, or more then one for that mater, your getting into the difficult world of load balanced cluster servers now.
Anyway here's a suggestion if your really really like extra work.
--- extract from squids user manual ---
DNS or CARP load balancing will allow you to split the load between two (or more) machines.
DNS load balancing is the simplest option: In your DNS file, you simply add two A records for the cache's hostname The order that the DNS server returns the names in is continuously, randomly switched, and the client requesting the lookup will connect to a random server.
These server machines can be setup to communicate with one-another as peers. By using the proxy-only option, you reduce duplication of objects between the machines.
There are other load-balancing options. If you have client caches accessing the overloaded server (rather than client pcs), you can configure Squid on these machines with the round-robin option on the cache_peer lines. You could also use the CARP (Cache Array Routing Protocol) to split the load unevenly (if you have one very powerful machine and two less powerful machines, you can use CARP to load the fast cache twice as much as the other machines).
/raz
|