HTTP-Proxy-server in C#
Mein Unternehmen ist das Experimentieren mit dem schreiben einen proxy-server mit dem .NET Fx 3.5 und C#. Von unserer Forschung ich habe gelesen, dass HttpListener ist nicht ein guter Kandidat für einen proxy-server aber ich bin nicht sicher, warum.
Derzeit arbeiten wir mit der Mentalis-proxy-Beispiel-source-code obwohl, die, unter anderem, die Umsetzung unserer eigenen logging-und Leistungsindikatoren. Mit HttpListener wrap Http.sys die wird uns einige der performance-Statistiken, die wir benötigen, aus der box.
Also, warum ist HttpListener eine schlechte Kandidat für HTTP-proxy arbeiten?
(Und ja, wir sind angesichts Squid 3.1 schriftlich oder konfigurieren ICAP-server als auch.)
Du musst angemeldet sein, um einen Kommentar abzugeben.
HttpListener ist .NETZ zu stellen ein wesentlicher Baustein für eine einfach HTTP-server. Wo einfach schließt nicht Unterstützung von high Operations-raten.
In der Regel HTTP-Proxys müssen sehr gering overhead, unterstützen viele gleichzeitige verbindungen als auch die Bereitstellung von proxy-Funktion (abhängig von der Art des proxy).
Proxies sind detailliert in RFC 2616 §8.1.3) und bietet sofort eine Position, die (wenn ich verstehen HttpListener richtig) ist nicht möglich:
Sie könnten auch erwägen, dass der windows-port von nginx veröffentlicht wurde vor ein paar Tagen. Viele Websites, Tintenfisch und Lack Erfahrung sind sehr zufrieden nach der Umstellung auf nginx. Dann gibt es immer was MS ruft ISA-server in diesen Tagen.
Off gegangen, zu schauen die Mentalis code jetzt 😀