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.

Reply via email to