mina-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Emmanuel Lecharny (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DIRMINA-668) Modify the way we use IoProcessors
Date Mon, 07 Dec 2009 16:41:18 GMT

    [ https://issues.apache.org/jira/browse/DIRMINA-668?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12786979#action_12786979
] 

Emmanuel Lecharny commented on DIRMINA-668:
-------------------------------------------

The IoProcessor class inherits from the AbstractPollingIoProcessor class, which contains an
inner class named Processor, which is responsible for handling incoming messages. This class
implements Runnable, and call the process() method, which iterates on all the selected sessions,
one by one, do a read() for each one of them, and call the filterChain.fireMessageReceived(buf)
method if some data has been received. If yiu don't put an executor in your chain, and if
this chain processing is costly, then the whole mchansim will wait until your costly handling
is finished.

> Modify the way we use IoProcessors
> ----------------------------------
>
>                 Key: DIRMINA-668
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-668
>             Project: MINA
>          Issue Type: Improvement
>    Affects Versions: 2.0.0-M4
>            Reporter: Emmanuel Lecharny
>             Fix For: 3.0.0-M1
>
>
> In the current code base, when accepting new connections, we pick a processor and register
the news connection within the internal selector. In other words, we have as many selectors
as we have IoProcessors.
> This is a potential problem if some request cost a lot to be executed, as every requests
waiting on this IoProcessor will be blocked.
> It would be way better to use a single selector which dispatches requests to an Executor,
as we will always have available threads ready to process the requests (unless the pool is
saturated, but then we have a bigger issue ...)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message