[erlang-questions] Is Erlang ideal for a global exchange?

Ulf Wiger ulf@REDACTED
Tue Jan 6 10:44:01 CET 2015

> On 05 Jan 2015, at 17:28, xu xiut <xiut.xu@REDACTED> wrote:
> I am looking at using Erlang for an exchange. If I'm lucky, my transaction volume will be 100 - 150k day or about 4000 transactions/hour, about 1.5/sec At this rate, maybe Erlang wouldn't be necessary

It usually isn’t the “fair-weather” performance requirements that test the metal of a system, but the exception cases.

Presumably, the transaction volume isn’t ideally spread across the day. What kinds of bursts can be envisioned?

Also, whether 1.5 transactions/sec is easy or hard depends in part on how much persisting needs to be done, and how many external systems need to be involved in the transaction.

Even so, this is the stuff Erlang was made for - *especially* if transactions involve communication with external systems. With Erlang, you can easily break down the design into multiple state machines, which execute in their own thread and maintain their own state. This makes it easier to understand the design, and to test and debug it.

After all, when weighing different requirements, correctness and stability usually rank higher than speed. And in “interesting” systems, the main thing affecting performance tends to be complexity: if the design is opaque, it will be hard to reason about performance.

Ulf W

Ulf Wiger, Co-founder & Developer Advocate, Feuerlabs Inc.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20150106/5797ae16/attachment.htm>

More information about the erlang-questions mailing list