Hi everyone, I hope someone can help me with the following problem.
I want to issue SOAP request from rails to connect to a legacy system
in the backend. First I tried savon as a SOAP client. Everything
worked fine, but the performance was bad. The following code
client = Savon::Client.new
client.http.headers[“Content-Type”] = “application/soap+xml;
charset=utf-8”
client.wsdl.endpoint = “http://localhost:22234/calculator”
client.wsdl.namespace = “http://excelsoap.local.com/”
response = client.request :wsdl, “validate” do
soap.version = 2
soap.body ={ “code” => “some data as value” }
end
requires about 1000 ms to execute.
So I switched to http and tried the Restclient. But the following code
api_call = RestClient.get ‘http://localhost:3000/purchases’
requires about 1000 ms to execute as well.
My last try was a simple http request
net= Net::HTTP.new(“127.0.0.1”, 3000)
http = net.start
res=http.request(Net::HTTP::Get.new(“/purchases”))
which itself requires 200 ms.
I ask myself:
Are these normal time values when working in a rails environment (I
expected something around 5-10ms)?
Is there anything wrong with my code or are there better solutions;
and what can I do to improve the timing?
Has anybody performance benchmarks for similar requests?
Thanks for any help and kind regards, Manni