Now i am seeking a suitable architecture for our project. Let me describe the ENV and Requirements we are working with, if u have any words to say , i am so appreciated:)
Now considering a Mobile Client to Chat with a PC workstation, it's request will pass by a Gateway, which will transfer the request data to the Chat protocol format and deliver it to the Chat System. Now job is to create the Gateway, but when client request coming, a load balancer will apply the balance strategy to deliver the request to the Server with good performance, say that there are a Server Group.
In order to record the client's session information among the Server Group, we should use something to remember the session(Database?, file?). I read the doc of WebLogic, it has three strategy in dealing with cluster: Memory-Copy, Database Persistance, File Persistence. Any Advises?
Next is the Network call, when a client is send a request to the balancer, then we don't know which server it will be delivered to. Our now strategy is to store the information of the server, which deal with this client's request when it login, to the database, when client again request still let this server to give the response service. I don't know how the performance will be to use this strategy.