module CitrusRpc::RpcClient::Router
Public Instance Methods
ch_route(client, server_type, msg, &block)
click to toggle source
Consistent-Hash algorithm for calculating server id
@param [Object] client @param [String] server_type @param [Hash] msg
# File lib/citrus-rpc/rpc-client/router.rb, line 59 def ch_route client, server_type, msg, &block end
df_route(session, msg, context, &block)
click to toggle source
Calculate route info and return an appropriate server id
@param [Object] session @param [Hash] msg @param [Object] context
# File lib/citrus-rpc/rpc-client/router.rb, line 19 def df_route session, msg, context, &block end
la_route(client, server_type, msg, &block)
click to toggle source
Least-Active algorithm for calculating server id
@param [Object] client @param [String] server_type @param [Hash] msg
# File lib/citrus-rpc/rpc-client/router.rb, line 51 def la_route client, server_type, msg, &block end
rd_route(client, server_type, msg, &block)
click to toggle source
Random algorithm for calculating server id
@param [Object] client @param [String] server_type @param [Hash] msg
# File lib/citrus-rpc/rpc-client/router.rb, line 27 def rd_route client, server_type, msg, &block end
rr_route(client, server_type, msg, &block)
click to toggle source
Round-Robin algorithm for calculating server id
@param [Object] client @param [String] server_type @param [Hash] msg
# File lib/citrus-rpc/rpc-client/router.rb, line 35 def rr_route client, server_type, msg, &block end
wrr_route(client, server_type, msg, &block)
click to toggle source
Weight-Round-Robin algorithm for calculating server id
@param [Object] client @param [String] server_type @param [Hash] msg
# File lib/citrus-rpc/rpc-client/router.rb, line 43 def wrr_route client, server_type, msg, &block end