[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Application of my fault-tolerant real-time technology



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