Comment by jcl

18 years ago

And it's running on top of PLT Scheme, which adds another layer of interpretation.

And it's running as a single process on a single server without a database storing everything on the file system. That it's doing the traffic it is I find quite impressive.

  • In 2 GB of memory.

    • You know I'd love to see a writeup of the issues and challenges you've faced with this persistence strategy as the site grew. You know, more details of what you decided to lazy load, why, and how, and the impact it had.

      Technically speaking, I find hacker news persistent strategy one of the most interesting things about the implementation.

      I use a similar strategy for my blog and just playing with larger datasets I've certainly run into hard limits on what seems to be acceptable.

  • Are there any articles on the "HN storing everything on the file system"?

    I am quite interested in the architecture, because I found this approach nice for some sites I was building. They were not very large though.

  • > without a database

    Why?

    I can understand not using a database if this was improving the performance.

PLT Scheme is not "interpreting" code. More than that, Arc adds a bunch of huge overheads that could make things substantially faster. I had some patches lying around that made things around 4-5 times faster (including the news server).

but it's calling all those ar_funcall2 or whatever ... not that much indirection really.