3 ms·
The Architecture of Mailinator - averaging 4.5million emails a day on a single 2Ghz machine
- inklesspen 20y agoI am a little surprised they get this much performance out of Java. But I guess if you know it like the back of your hand, you can make it fly.
- Tichy 20y agoJust curious, what else than Java would you use for performance, save for C or Lisp? I know the YC folks don't appreciate it, but actually Java has it's merits. Last comparison I looked at, Java was 6 times slower than C, with only LISP being faster and not being C. Scripting languages like Python or Perl are a factor slower than Java.
- inklesspen 20y agoMy perception is that the extra coding done to implement things like patterns to get around the fact that Java is so limited a language will cut down on the performance gains. But I don't have any statistics to back that up. BTW, Python is not just a scripting language. It is a real language that just happens to be usable as a scripting language. Lua is a scripting language.
- Tichy 20y agoOK, not the right place for that discussion. The reason languages like python are inherently slower is that they are not strongly typed. It seems only LISP is getting it right, I think there you can voluntarily use strong typing, allowing for dramatic speed improvements - why don't any other languages copy that? (I think it must be the typing that is responsible for the speed difference - this time I don't have an official article backing that up).
- ralph 20y agoIf you look at the PyPy project you'll see that it's possible with Python to spot that foo is always an integer within a certain scope, thereby allowing short-cuts when dealing with it. They're also using the excellent LLVM framework to JIT the Python byte-code. It's not replacing the CPython interpreter anytime soon, but it is doing interesting stuff. URL: http://codespeak.net/pypy/dist/pypy/doc/index.html http://codespeak.net/pypy/dist/pypy/doc/index.html LLVM is well worth a look, BTW. Now that Apple have seen its benefits and are providing a workforce it's coming along in leaps and bounds. URL: http://llvm.org/ http://llvm.org/
- Tichy 20y agoOK, not the right place for that discussion. The reason languages like python are inherently slower is that they are not strongly typed. It seems only LISP is getting it right, I think there you can voluntarily use strong typing, allowing for dramatic speed improvements - why don't any other languages copy that? (I think it must be the typing that is responsible for the speed difference - this time I don't have an official article backing that up).
- mynameishere 20y agoLISP is faster than Java? With all that pounding on the stack? I'd have to see it to believe it. Anyway, FORTRAN is still faster than C at a lot of things.
- pyc 20y agohttp://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=all&lang=sbcl&lang2=java http://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=all&lang=sbcl&lang2=java It varies but SBCL has an edge.
- pyc 20y agohttp://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=all&lang=sbcl&lang2=java http://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=all&lang=sbcl&lang2=java It varies but SBCL has an edge.
- jganetsk 20y agoThe ML family... you get a type-safe language and all the benefits of functional programming... and both OCaml and SML are only between 1-2 times slower than C. And you get the benefit of the static type checker, which catches 90% of bugs. I know pg doesn't like static type checking, but I respectfully disagree.
- brett 20y agoI remember reading this a while back. Sounds like a good data point for Paul Buchheit's Startup School point about memory vs disks.
- budu3 20y agoWow, amazing design philosophy. It's so unlike a google philossphy giving that he works with google. If this was done by google they'd keep every email ever sent to mailinator and analyse it for stats and patterns the help improve the system.