Le 27 mars 2013 12:33, "IronMan" <[email protected]> a écrit :
>
> Dear Emmanuel,
>
> Thank you so much for the answer;
> I have understood that Apache MINA is inherently multi-thread.
> Basically, it start (numbers of processor +1) thread.
> I have verified it with my application; however I am developing a
> storage service able to manage a large number of connections. I am
> thinking that this service will be deployed on a Grid of Processor. In
> my university there is a parallel computation system with about 548
> core.My question is Apache MINA is able to use all the 548 core? If
> yes, how?

as you mentionned, mina starts nbProcs +1 ioProcessors, and as many
threads. They are associated with the sessions, so it should scale nicely.
This is automatic.

>
> Thank you so much,
>
> best regards
>
> 2013/3/6 Emmanuel Lécharny [via Apache MINA]
> <[email protected]>:
> > Le 3/6/13 6:16 PM, IronMan a écrit :
> >> Hi,
> >> I want to develop a multithreading Client/Server Application using
Apache
> >> MINA.
> >> I have find many examples for the single-thread case, but nothing for
> >> multithread. There is documentation for the multithread case?
> >
> > MINA allows you to design a multi-threaded server natively. In fact, it
> > *is* multi-threaded.
> >
> > There is nothing special you have to do to deal with multi-threaded
> > aspects, except to be sure that you have a thread-safe application.
> >
> > Let me explain how it works :
> >
> > 1) A client connects to the server : a thread is picked to process the
> > request. This thread will always be used for every request sent by this
> > client (unless you start playing with an executor in the middle of your
> > code)
> > 2) Once the server has received the request, and ha sprocessed it, it
> > can send back a rrsponse : this is done on the same thread
> > 3) And that's it.
> >
> > If you have a second client, it will use another thread.
> >
> > Ok, now, at some point, it's not anymore a One client/One thread
> > association. We have a limited number of threads available (default to
> > Nb processor +1), so when we reach the max number of thread, we reuse
> > the first thread (this is a round robin mechanism).
> >
> > So many clients can use the same thread. Still, this is safe as one
> > client won't be able to user the thread that is already used by another
> > client : it will be queued waiting for the previous client to be done.
> >
> > That's the way it works. Its an overly simplified explaination though.
> > You just have to give it a try, you'll see it works pretty well.
> >
> > --
> > Regards,
> > Cordialement,
> > Emmanuel Lécharny
> > www.iktek.com
> >
> >
> >
> > ________________________________
> > If you reply to this email, your message will be added to the discussion
> > below:
> >
http://apache-mina.10907.n7.nabble.com/Multithreading-Client-Server-Application-tp36962p36963.html
> > To unsubscribe from Multithreading Client/Server Application, click
here.
> > NAML
>
>
>
> --
> **********************************************************************
> Maurizio Colizza
> Research Engineer
> Università degli Studi dell'Aquila-Centro di eccellenza DEWS
> Cel. 3339973021
> Skype : maurizio.colizza
> **********************************************************************
>
>
>
>
> --
> View this message in context:
http://apache-mina.10907.n7.nabble.com/Multithreading-Client-Server-Application-tp36962p37196.html
> Sent from the Apache MINA Developer Forum mailing list archive at
Nabble.com.

Reply via email to