module WoolenCommon::DrbClientHelper
Public Class Methods
client_init(server_addr='127.0.0.1',my_port=nil)
click to toggle source
# File lib/woolen_common/drb_helper.rb, line 91 def client_init(server_addr='127.0.0.1',my_port=nil) the_port = my_port if my_port @my_url = "druby://0.0.0.0:#{my_port}" @me_service = start_service(@my_url,self) else 100.times do begin port = get_rand_port the_port = port if server_addr == '127.0.0.1' @my_url = "druby://127.0.0.1:#{port}" else @my_url = "druby://0.0.0.0:#{port}" end debug "client need to try url #{@my_url}" @me_service = start_service(@my_url,self) break rescue Exception => e error "在使用随机端口时出错了#{e.message}" retry end end end debug "server addr ::#{server_addr},port#{SERVER_DEFAULT_PORT}" server_str = ip_or_iport_with_default(server_addr,SERVER_DEFAULT_PORT) @server_service = get_drb_connect_obj(server_str) url = "druby://#{DEFAULT_CLIENT_ADDR}:#{the_port}" debug "the server#{@server_service}need to invoke worker connect url::#{url}" @server_service.on_one_worker_connect(url) end
Private Instance Methods
client_init(server_addr='127.0.0.1',my_port=nil)
click to toggle source
# File lib/woolen_common/drb_helper.rb, line 91 def client_init(server_addr='127.0.0.1',my_port=nil) the_port = my_port if my_port @my_url = "druby://0.0.0.0:#{my_port}" @me_service = start_service(@my_url,self) else 100.times do begin port = get_rand_port the_port = port if server_addr == '127.0.0.1' @my_url = "druby://127.0.0.1:#{port}" else @my_url = "druby://0.0.0.0:#{port}" end debug "client need to try url #{@my_url}" @me_service = start_service(@my_url,self) break rescue Exception => e error "在使用随机端口时出错了#{e.message}" retry end end end debug "server addr ::#{server_addr},port#{SERVER_DEFAULT_PORT}" server_str = ip_or_iport_with_default(server_addr,SERVER_DEFAULT_PORT) @server_service = get_drb_connect_obj(server_str) url = "druby://#{DEFAULT_CLIENT_ADDR}:#{the_port}" debug "the server#{@server_service}need to invoke worker connect url::#{url}" @server_service.on_one_worker_connect(url) end