Hacker News new | ask | show | jobs
by captainmuon 4341 days ago
This site feels ridiculously fast. I've noticed that with other compiled frameworks too, e.g. CppCMS: http://cppcms.com/wikipp/en/page/main

I wonder if it is just the lightweight HTML the websites use, or if there is really so much speed to gain from using a compiled language.

6 comments

Commenters on this site had similar observations about D language's forum, which is written in D.

http://forum.dlang.org/ Code: https://github.com/CyberShadow/DFeed

If one insists on writing a webapp in a C/C++ like language, D might be the sane way to do it.

Nimrod is also becoming a real possibility, check out the Jester framework. I forget the other's name, but it did reasonably well on TehcEmPower benchmarks and runs behind the Mongrel2 web server via ZeroMQ sockets. Very cool stuff.
Google Go is a popular way to do it.
They're completely static pages with no images; it's not hard to get that kind of speed. For example, sqlite.com seems just as fast to me.
Yes, there are definitely huge speed gains possible and if you choose an implementation which is still interactive you get the benefits of both (I know one particular example in CL: teepeedee2, there are some blogs posts, e.g. http://john.freml.in/teepeedee2-c10k or so).
I have seen it come up many times, but is anyone still using it or tried it long term? I checked a year ago or so and it appears both Git commit-wise and blogwise Fremlin had moved on to better things, but when people dismiss Lisp, I don't say it out loud but I immediately think of this project.
I tested this page because most of the site is too small to get meaningful comparisons:

http://nopedotc.com/gallery/facedetector

It is faster to load than a highly optimised page which is half the size running on a more conventional stack.

The initial DNS request was the biggest saving on time, though, weirdly enough, followed by the time to connect. I have no idea why this is, or how to minimise DNS request time in general.

9.7k with everything inline can do that.
It is the speed of using a language with a compiler.