[racket] How much RAM does a Racket personal blog need?

From: Greg Hendershott (greghendershott at gmail.com)
Date: Thu Sep 12 13:48:13 EDT 2013

Racket in general -- and a small server written in it -- runs fine
even on Amazon EC2 "micro" instances. They have enough RAM. They
aren't very fast, but the CPU can "burst" for ~10 seconds, which for
many server roles is all you need.

If you wanted a full-time offsite machine, I'd suggest something like
Digital Ocean as being more affordable than even a "reserved instance"
at Amazon. They start at $5/month[1].  For example recently I've been
experimenting with making such a machine my main dev box and ssh-ing
into it from whatever -- from a laptop, from an iPad with ISSH, etc.
If you're comfortable with tmux and emacs, this works surprisingly
well. Of course you could also run a server like this from your home.
Different pros and cons WRT to reliability, power, cooling,
maintenance, bandwidth, physical security, digital security, and so
on.

However: Neil's advice (as usual) is excellent about making things as
static as possible. In fact you can take this even further and make
your entire site static[2], and as result host it on e.g. GitHub
(free) or Amazon S3 (inexpensive). That way, when one of your blog
posts makes the front page of HN, handling the brief traffic surge
won't be your problem. :)

So when you want a production server to "just work", that can be a
better way to go. Of course when your main goal is to learn hands-on
it's better to roll your own.

[1]: https://www.digitalocean.com/
[2]: Although the site is static files on the server, it can still
have some "dynamism" from JavaScript running on clients.


On Tue, Sep 10, 2013 at 10:52 PM, Neil Van Dyke <neil at neilvandyke.org> wrote:
> Ben Duan wrote at 09/10/2013 10:33 PM:
>
>>
>> I'm buying a VPS to build my personal blog and learn Racket through the
>> process. But I don't know how much RAM do I need. Do you have any
>> suggestions? And any other suggestions on how to choose a VPS for Racket?
>>
>
> You can determine this empirically.
>
> Before you do, consider how you want to architect and deploy your app.
> Personally, I often like to start by making as much as possible static files
> that could be served by Apache or nginx (or a CDN), and then having deployed
> Racket run only for the parts that need to be dynamic (using my bare-bones
> "scgi" PLaneT package, or the Racket Web Server if I need continuations).  I
> also like to have Racket generate the static HTML files (using my
> "html-writing" and "html-template" PLaneT packages), as well as to prepare a
> staging directory to "rsync" to the server for deployment.
>
> Also, a big advantage of the cloud is that you can scale up easily.  For
> example, you could start with an Amazon EC2 free instance with Debian
> GNU/Linux, deploy your app to it, run JMeter against it with the peak load
> you want to support, and see whether you need a bigger instance.  If you
> don't have anything non-stock on the instance other than what you "rsync"
> from a staging tree, upgrading instances is even easier.
>
> Neil V.
>
> ____________________
>  Racket Users list:
>  http://lists.racket-lang.org/users

Posted on the users mailing list.