func handleForServer1(res http.ResponseWriter, req *http.Request) {
rPayload := parseRequestBody(req)
serve("http://server1:8080", res, req)
}
func handleForServer2(res http.ResponseWriter, req *http.Request) {
rPayload := parseRequestBody(req)
serve("http://server2:8080", res, req)
}
func serve(dest string, res http.ResponseWriter, req *http.Request) {
url, _ := url.Parse(dest)
p := httputil.NewSingleHostReverseProxy(url)
req.URL.Host = url.Host
req.URL.Scheme = url.Scheme
req.Header.Set("X-Forwarded-Host", req.Header.Get("Host"))
req.Host = url.Host
p.ServeHTTP(res, req)
}
У меня есть код, как указано выше.Мне интересно, есть ли способ узнать, сколько одновременных соединений имеет обработчик "handleForServe2"?
Целью этого кода является создание функции обратного прокси.Но я также хотел бы добавить баланс загрузки на основе одновременных подключений на сервер, к которому подключен.
Большое вам спасибо!