[Haskell-cafe] Looking for architecture/infrastructure advice on coping with thousands of concurrent clients

Andrew Gibiansky andrew.gibiansky at gmail.com
Wed Jul 9 18:01:44 UTC 2014

I don't have any comments on the specifics of your application, but I've
used zeromq4-haskell [0] for IHaskell and it's a solid library that works
well. There's also zeromq-haskell (instead of zeromq4-haskell) if you want
older ZeroMQ. I was using it for local communication, not networked though,
so not sure if that changes anything. It is fairly low-level, though, so I
imagine Cloud Haskell can give you a higher level of abstraction when
dealing with networking stuff.

[0] https://hackage.haskell.org/package/zeromq4-haskell

On Wed, Jul 9, 2014 at 10:40 AM, Isak Hansen <isak.hansen at gmail.com> wrote:

> Let's just imagine there aren't enough poker sites out there already and
> that it makes sense to build another one. Basically, there will be players
> connecting to one or more tables, most likely talking some kind of JSON
> based protocol with the server(s).
> #1 - What's a good way to set up and maintain compressed and encrypted
> connections from the clients to my cluster? I've been wanting to try out
> websockets, think that'll do?
> #2 - I'm new to Haskell and would appreciate thoughts on how to store and
> process game state. Imagine a plain application managing 1000 tables of
> poker, responding to player input (that magically appears) and timer events
> (e.g. folding players that fail to take action). What data structures and
> libraries should I be looking at here? Thoughts on concurrency and how I
> organize program flow?
> #3 - I'm thinking of ZMQ to wire components together. Would I be better
> off basing my cluster on Cloud Haskell or some other library for
> distributed work?
> Would love some quick pointers and feedback here, thanks in advance,
> Isak
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20140709/d51142de/attachment.html>

More information about the Haskell-Cafe mailing list