Curl supports http/2 (and even has experimental support for http/3 which is orders of magnitude faster than http/1.1. Depending on what protocols the server you're talking to supports, that could be part of it.
On Monday, September 14, 2020 at 3:42:37 PM UTC-7 [email protected] wrote: > Hi Stephen, > > I ran this small benchmark against a remote web server, and was > definitely getting better response using the http-easy module. > > https://gist.github.com/samdphillips/32763ebd0d938678c2972b1dd8ee5778 > > $ racket -e '(require (submod "http-perf.rkt" curl))' > cpu time: 768 real time: 35299 gc time: 0 > > $ racket -e '(require (submod "http-perf.rkt" http-easy))' > cpu time: 1810 real time: 17316 gc time: 70 > > On Mon, Sep 14, 2020 at 12:57 PM Stephen Foster <[email protected]> > wrote: > > > > Finally circling back to this issue. I've disabled debugging in DrRacket > and also done a test outside of DrRacket. It's still slow. :( > > > > I also tried the newer HTTP client: > https://docs.racket-lang.org/http-easy/index.html. Like the others, it is > also slow. > > > > I'll do some more digging. I'm currently trying to figure out if this is > a "just me" / "just my system" problem. So... I'd be grateful if anyone who > has written code that sends HTTP requests from Racket could chime in with: > 1) I can confirm that sending HTTP requests from Racket has always been > fast for me, or 2) I too have noticed Racket HTTP requests are slow. > > > > (Note that by "slow", I mean: takes noticeably longer than curl.) > > > > > > > > On Tue, Jul 7, 2020 at 12:21 PM Jon Zeppieri <[email protected]> wrote: > >> > >> Hi Stephen, > >> > >> Your video shows you running this code in DrRacket with debugging > >> enabled. That usually affects performance. Have you made measurements > >> when running this code outside of DrRacket? > >> > >> - Jon > >> > >> > >> On Tue, Jul 7, 2020 at 2:13 PM Stephen Foster <[email protected]> > wrote: > >> > > >> > I'm considering using Racket to remake my 3D game CodeSpells. I'm > using http requests to have Unreal Engine and Racket talk to each other. > >> > > >> > When I use the http/request library, Racket fires off its GET request > much slower than if it were to do a system call to curl. (Same is true if I > use simple-http, which makes me think the problem might be a deep one.) > >> > > >> > Here's a video to demo the issue. Notice how, with curl, the > experience is playable, whereas with the Racket function, there's way too > much time between the spell landing and the effect occurring: > >> > > >> > https://youtu.be/jTqUFVlfBFA > >> > > >> > Obviously, I'd like to do things in a Rackety way. But I'm not above > doing things the silly way. I'd just be grumpy about it. > >> > > >> > Any ideas? > >> > > >> > > >> > > >> > -- > >> > You received this message because you are subscribed to the Google > Groups "Racket Users" group. > >> > To unsubscribe from this group and stop receiving emails from it, > send an email to [email protected]. > >> > To view this discussion on the web visit > https://groups.google.com/d/msgid/racket-users/997693d6-b94a-4f69-85cf-aa475c807b20n%40googlegroups.com > . > > > > > > > > -- > > > > > > Stephen Foster > > ThoughtSTEM Co-Founder > > 318-792-2035 <(318)%20792-2035> > > > > -- > > You received this message because you are subscribed to the Google > Groups "Racket Users" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected]. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/racket-users/CA%2BzSu2_%2BTKVTe--OZRU_BE_LyofFkA869c-2v%2BRJ76HjDQt4_w%40mail.gmail.com > . > -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/1c8664fa-e8f2-49c8-8417-101dd7186231n%40googlegroups.com.

