PureBytes Links
Trading Reference Links
|
Hello Joel,
There has been a lot of "catch-up" in the realm of multi-threading,
networking, and clustering. Erlang would have made sense in the 90s,
but today I would stick with more standard and widely distributed
architectures like Microsoft's Remoting.
-F
Wednesday, June 29, 2005, 5:04:48 PM, you wrote:
> Folks,
> I developed a fault-tolerant (99.999% uptime) and infinitely scalable
> poker server based on technology that telcos use to build their 911
> telephone switches.
> I built a cluster that can be reconfigured on the fly with new nodes
> or machines added or taken away at any time. I'm interested in
> applying the same technology to real-time trading systems and
> backends. Can you recommend a niche?
> The technology is the Erlang/OTP (Open Telecom Platform), more on it
> at http://www.erlang.org. It has been developed for soft real-time
> systems and have been used successfully for a few years. Fault-
> tolerance, fail-over, take-over is built right into the platform and
> concurrent processing is one of its strengths.
> Erlang comes with a real-time replicating in-memory database called
> Mnesia. It was originally designed for real-time call billing and the
> maximum size of the database is 4Gb. It can be written to disk on one
> or more nodes in a cluster and is kept in-memory on all others.
> Changes are propagaged in real-time on all nodes and fault-tolerance
> is built in. The database will recover itself after a crash and new
> nodes coming online will automatically receive the latest copy.
> There are many situations where Erlang can be useful. Say you have
> multiple brokers to route orders to and that you normally prefer one
> over the other. You can automatically reroute your trades to a
> different broker when loosing connection to the first one.
> You can have stand-by trading apps (processes) that take over failed
> ones so that you don't loose opportunities and money.
> Processes within Erlang are very lightweight so you can afford to
> model your trading systems in a concurrent fashion, doing things on
> every tick, etc.
> Erlang is particularly suitable for writing network servers, proxies,
> protocol converters, etc. I'm thinking of real-time data feeds,
> automated and program trading but will apreciate any advice and
> suggestions.
> Thanks, Joel
> --
> http://wagerlabs.com/tech
|