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