[erlang-questions] Help my with Chat System
Wed Nov 2 09:18:06 CET 2011
Combet Clients and Desktop Client are both client, just the way they
connect to system are different. You can use mnesia or an ETS table to
keep track of the user--active ID--process maps, add more tables to
make it more compelx, such as 1-many, Groups or others. And I think plus
Rabbitmq or mongodb to support this solution will be more fun.
combet clients ---------mochiweb --------- mnesia, rabbitmq ,
? 2011/11/2 11:58, Summer nguyen ??:
> Hello experts,
> My job is implementing a Chat System between a Web user ( Comet
> client) and a Swing Desktop Client.
> After searching google, I found a topic of a Facebook Engineer that
> make me choose Erlang:
> So I'm very new to Erlang and Thrift.
> After studying , Here is my solution:
> 1. Comet Server ( using Erlang)
> * Accept Comet Clients
> * If the client is New, Call /Processing Server /using Thrift to
> generate an *ID *for him.
> * Store *Response Object* in a Dict using the abobe *ID*
> * Get Message from Comet Client and Call /Processing Server
> /using Thrift to send Message to Swing Desktop Client
> * Open a /Thrift Server Service (1/) that listen from
> /Processing Server/ action: send message to ID xxx ( and then
> response to the right comet Client)
> 2. Processing Server ( Using Java)
> * Accept Swing Desktop Client
> * Open a /Thrift Server Service (2)/ that listen from/Comet
> Server/ actions: generate ID, send message ( and then Send to
> Swing Desktop Client)
> * Receive message from Swing Desktop Client , then Call /Comet
> Server /using Thrift to send Message to Comet Client
> Please give me advice if Erlang have a better solution for me.
> If you don't understand my idea, please tell me. My english is not good.
> Thank you very much.
> Name: Nguyen Huu Ha
> HCMC University of Technology
> Faculty of Computer Science & Engineering
> Tel: 01699987252
> Email: <mailto:>
> Y!h: summer.inthesun
> erlang-questions mailing list
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the erlang-questions