I'm glad to hear about the Racket web server's reliability! I'm still 
working through the high level architecture, but it seems like one Racket 
instance per core make sense to maximize cpu utilization, and then I may 
spin up a thread per request w/in each process to maximize memory 
utilization.

I like using nginx in front of the application for a couple reasons: 1) It 
handles non-application requests (e.g. simple files) very fast, and 2) I'm 
very familiar with configuring it for multiple distinct apps, SSL, etc.

So, in the absence of a Unicorn or Puma-like app server in Racket, I think 
a couple good options are:

1) Use monit to manage a set of Racket server processes (one per core), and 
have nginx load balance requests to them (or alternatively, as George 
mentioned, let the OS load balance by having the server processes all 
listen on the same port).

2) Write a simple master process (i.e. very scaled down Unicorn or Puma) in 
Racket that manages a Racket worker process per core.

I'm pretty sure that I'll eventually want option #2, but I may need to go 
with #1 initially in the interest of time.

On Saturday, November 24, 2018 at 12:03:27 AM UTC-5, Greg Hendershott wrote:
>
> In my experience a Racket web server will just stubbornly continue to 
> work for months at a time, if you let it. 
>
> (Reminds me of the aviation joke. In the future, cockpits will have 
> just one human pilot and a dog. The dog is there to bite the human if 
> they try to turn off the autopilot.) 
>
> I have a site on one little t2.micro at AWS. 
>
> It is behind an AWS application load balancer -- but mainly just as an 
> easy way to do SSL termination. 
>
> I also added WAF to filter script kiddies who don't bother to supply a 
> valid Host header while they try to log into phpadmin or whatever. For 
> non-FANG sites honestly that will be a large proportion of your 
> traffic in terms of number of requests. It wasn't making the Racket 
> web server sweat, I just wanted to noise out of my logs and stats. 
>

-- 
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 racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to