VaRest HTTP GET is slow

Hello guys,

I am working with VaRest 1.1-rc8 plugin and my get requests keep timing out or are very slow (think 30 seconds to 2 minutes). I can’t figure it out… Via browser all calls are extremely fast (even after clearing cache). I am testing it on my own website as well, which is horribly slow as well. I also tried monotoring via wireshark, but it seems request is not found there… First i thought it was a server issue, but it is easily reproducible on public sources as well. See below.

Logfiles of code with full logging enabled for http calls:
[log.txt][1]

A slow site:
http://www.filltext.com/?rows=10&fname={firstName}&lname={lastName}&pretty=true.json

Test same site via this tool:

Somehow this large .json is fast…:
https://edg.epa.gov/data.json

Hi ,

We don’t offer support for externally created plugins. Please communicate with plugin’s creator for this issue. I believe appropriate place would be here:

Thanks!

It seems to be related to a LibCurl call, if i add following to engine.ini

[Networking]
UseLibCurl=False

It now processes everything in a matter of milliseconds… It either seems to be related to way UE4 calls LibCurl or libcurl itself? Care to investigate?

See my comment(s) below for more information

I think its still good to test performance of curl vs wininet, because this performance difference is huge in example above… By just making a HTTP call via UE you should be able to reproduce it.

For windows this solved our issues, but now are also also testing on Linux and LibCurl is only option there, hence above solution is not good enough. I compared http requests between libcurl and wininet, but couldn’t find anything interesting that could explain extremly slow Curl requests. Any ideas? Thanks!

Hey ,

Thanks for report. We currently have a issue regarding performance of HTTP requests. You can follow it here:

https://issues.unrealengine.com/issue/UE-33732

I am very surprised that this issue has not been solved yet, its really unworkable at moment. Also i am curious why so few people are complaining about it… there must be a workaround for this…

I am also running into this issue. REST calls are extremely slow. I am running on Windows and tried your workaround, but I couldn’t get it to work. I just want to confirm: I edited file in my project folder “Config/DefaultEngine.ini” and added lines in your answer to disable LibCurl, but I still get slow calls when I click “Play” in engine editor. I am using Unreal Engine 4.22. Maybe this workaround doesn’t work any more? Or am I editing wrong file?

This issue is still there in UE 5.0.3
I’ve tried to add lines

[Networking]
UseLibCurl=False

and it doesn’t prevent FHttpModule to create FCurlHttpRequest in C++. I’m curious how this huge issue still haven’t been fixed…

Seems like UseLibCurl is removed from being a config I think (after checking source and can’t find where this var is used)