[ 
https://issues.apache.org/jira/browse/STORM-51?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Panfeng Yuan updated STORM-51:
------------------------------

    Attachment: STORM-51.patch

A simple pool of DRPCClient instances.

Each DRPCClientPool acts as a pool for all clients. To use, instantiate an 
DRPCClientPool and use {@link #getClient()} to get a DRPCClient from the pool.

Once you are done with it, close your instance of {@link DRPCClientIface} by 
calling {@link DRPCClientIface#close()}.

DRPCClientPool can be construct with the following parameters:
drpcServers: which specifies the DRPC server list, with format 
"host1:port1,host2:port2,host3:port3". The pool will load-balances different 
DRPC servers with Round-Robin policy.

maxSize: which defines the most DRPCClient references that will ever be 
retained for each DRPC server. Default is {@link Integer#MAX_VALUE}.
clientFactory: which defines factory to create new  {@link DRPCClientIface}. 
Default is {@link DRPCClientFactory}.

> DRPC client pool
> ----------------
>
>                 Key: STORM-51
>                 URL: https://issues.apache.org/jira/browse/STORM-51
>             Project: Apache Storm (Incubating)
>          Issue Type: New Feature
>            Reporter: James Xu
>         Attachments: STORM-51.patch
>
>
> DRPC clients should really be working via a pool to manage connection 
> resources and load against the DRPC server. Opening this ticket to track this 
> PR -https://github.com/nathanmarz/storm/pull/584
> There's a couple of other issues that could be helped along with a pool, for 
> example, https://github.com/nathanmarz/storm/pull/430, or async requests as 
> per https://github.com/nathanmarz/storm/pull/62



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to