¿Escalando múltiples HttpWebRequests?

Estoy creando una aplicación de servidor que necesita realizar muchas solicitudes http a otros servidores de forma continua. Actualmente, básicamente estoy configurando unos 30 subprocesos y ejecuto continuamente HttpWebRequests sincrónicamente en cada subproceso, logrando un rendimiento de aproximadamente 30 solicitudes por segundo.

De hecho, estoy configurando el ServicePoint ConnectionLimit en app.config para que ese no sea el factor limitante.

Necesito ampliar esto drásticamente. Como mínimo, necesitaré más potencia de CPU, pero me pregunto si obtendría alguna ventaja al usar los métodos asíncronos del objeto HttpWebRequest (por ejemplo: .BeginGetResponse ()) en lugar de crear subprocesos yo mismo y usar los métodos sincrónicos (por ejemplo: .GetResponse ()) en estos subprocesos.

Si uso los métodos asíncronos, obviamente tengo que rediseñar significativamente mi aplicación, por lo que me pregunto si alguien podría tener alguna idea antes de ir y recodificar todo, en caso de que salga a almorzar.

¡Gracias!

Respuestas a la pregunta(2)

Su respuesta a la pregunta