我正在寻找一个 HTTP 负载平衡解决方案,它将提供以下内容:
1) 接受端口 X 上的 HTTP 连接,并将它们随机或以循环方式转发到多个其他主机(和/或端口)之一。
2) 如果服务器回复包含具有特定值的某个 HTTP 标头(即'Magic-Number: 12345'),请记住它并将包含相同标头的所有后续请求转发到该服务器。
3) 每隔一定时间,通过向所有目标服务器发送指定的 HTTP 请求来执行保活测试。如果任一服务器没有回复,请停止转发,直到它再次联机。
4)(不重要,但很高兴)接受来自客户端的 HTTPS 连接并将它们转换为与服务器的 HTTP 连接。
该解决方案必须由免费和/或开源软件组成,并在 Windows 200x Server 下运行。
有什么建议么?
更新:如果 Cygwin 或 Portable Ubuntu(或其他 Colinux 发行版)能够运行适当的 *nix 解决方案,它们也是可行的选择。