Czy ja robię coś źle, czy proxy w node.js jest mega wolne?
Jak porównam performance w takim golangu, to jest 3x szybszy.
const requestPromise = require("request-promise"); // na axios i innych jest to samo
requestPromise({
url: 'urlToFetch',
proxy: 'proxyUrl',
}).then(function(data){ console.log(data); }, function(err){ console.error(err); });
Dane przychodzą po 6-7s, przy czym w golangu, po 2s.
package main
import (
"io/ioutil"
"log"
"net/http"
"os"
)
func main() {
os.Setenv("HTTP_PROXY", "proxyUrl")
resp, err := http.Get("urlToFetch")
if err != nil {
panic(err)
}
body, err := ioutil.ReadAll(resp.Body)
resp.Body.Close()
log.Println(string(body))
}
W sumie wiadomo, żeby golang jest szybszy jeśli chodzi o operacje na CPU, jednak Real Life Performance nie powinien mieć takiego rozstrzału...