class RPCBench::ZeroMQ::Server

Public Class Methods

new(opts) click to toggle source
Calls superclass method RPCBench::ZeroMQ::Base::new
# File lib/rpc_bench/driver_zmq.rb, line 41
def initialize opts
  super opts
end

Public Instance Methods

run() click to toggle source
# File lib/rpc_bench/driver_zmq.rb, line 45
def run
  sock = @context.socket(ZMQ::REP)
  sock.bind("tcp://*:#{@opts[:port]}")

  loop do
    request = ''

    sock.recv_string(request)

    data = request.inspect.slice(/[0-9]+/).to_i

    # Send reply back to client
    sock.send_string(@handler.callback(data).to_s)
  end
end