46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
# File 'lib/galerab/balancing_proxy.rb', line 46
def run(backend)
balancer_port = backend.conf["balancer_port"]
backend_port = backend.conf["backend_port"]
puts ANSI::Code.bold { "Launching proxy at 0.0.0.0:#{balancer_port}...\n" }
Proxy.start(:host => '0.0.0.0', :port => balancer_port, :debug => false) do |conn|
backend_host = backend.get_next
if backend_host
conn.server backend_host, :host => backend_host, :port => backend_port
puts ANSI::Code.bold { "Farwarding to #{backend_host}\n" }
conn.on_connect &Callbacks.on_connect
conn.on_data &Callbacks.on_data
conn.on_response &Callbacks.on_response
conn.on_finish &Callbacks.on_finish
end
end
end
|