[erlang-questions] trading systems
Jayson Vantuyl
kagato@REDACTED
Thu Oct 1 21:50:43 CEST 2009
> Erlang is often slow, even on multicore. Erlang is damn hard to
> optimize. I have spent literally months trying to understand the
> behavior and optimize OpenPoker and recently another system I build
> for a client. The latter system scales to hundreds of thousands of
> users on Amazon EC2 and makes use of up to 200 servers in simulation.
Concurrent + latency-sensitive + distributed == damn hard to optimize
in any language. That said, Erlang certainly takes a specific mindset
to optimize. Are these built with Distributed Erlang? I find that
it's rife with latency / weirdness. Working on an alternative to that
is one of my pet projects, although I strongly doubt that I can make
it as transparent as Distributed Erlang (a distribution plugin is
HARD, but links and monitors require deep integration with the VM).
> Both projects need high performance. I still bear the scars and I'm
> still recovering.
Please distinguish between low-latency, high-throughput, and both.
"High performance" and "fast" are hard terms to work with.
> I feel that Erlang is a good start but I also feel that I must start
> the right way. After a good deal of time spent with Erlang, I'm very
> wary of "use the naive approach first" suggestions. It's all good in
> theory but does everyone making these suggestions have my amount of
> practice ;-).
In my experience, optimizing first has never been better. I always
start out thinking so, but it's just not.
--
Jayson Vantuyl
kagato@REDACTED
More information about the erlang-questions
mailing list