def __init__(self, conf, context, matchmaker): self.conf = conf self.context = context super(UniversalQueueProxy, self).__init__() self.matchmaker = matchmaker self.poller = zmq_async.get_poller(zmq_concurrency='native') self.fe_router_socket = zmq_socket.ZmqRandomPortSocket( conf, context, zmq.ROUTER) self.be_router_socket = zmq_socket.ZmqRandomPortSocket( conf, context, zmq.ROUTER) self.poller.register(self.fe_router_socket.handle, self._receive_in_request) self.poller.register(self.be_router_socket.handle, self._receive_in_request) self.fe_router_address = zmq_address.combine_address( self.conf.rpc_zmq_host, self.fe_router_socket.port) self.be_router_address = zmq_address.combine_address( self.conf.rpc_zmq_host, self.fe_router_socket.port) self.pub_publisher = zmq_pub_publisher.PubPublisherProxy( conf, matchmaker) self.matchmaker.register_publisher( (self.pub_publisher.host, self.fe_router_address)) LOG.info(_LI("[PUB:%(pub)s, ROUTER:%(router)s] Run PUB publisher"), {"pub": self.pub_publisher.host, "router": self.fe_router_address}) self.matchmaker.register_router(self.be_router_address) LOG.info(_LI("[Backend ROUTER:%(router)s] Run ROUTER"), {"router": self.be_router_address})
def __init__(self, conf): self.conf = conf self.replies = {} self.poller = zmq_async.get_poller() self.executor = zmq_async.get_executor(self.run_loop) self.executor.execute() self._lock = threading.Lock()
def __init__(self, conf, context, matchmaker): self.conf = conf self.context = context super(UniversalQueueProxy, self).__init__() self.matchmaker = matchmaker self.poller = zmq_async.get_poller() self.fe_router_socket = zmq_socket.ZmqRandomPortSocket( conf, context, zmq.ROUTER) self.be_router_socket = zmq_socket.ZmqRandomPortSocket( conf, context, zmq.ROUTER) self.poller.register(self.fe_router_socket.handle, self._receive_in_request) self.poller.register(self.be_router_socket.handle, self._receive_in_request) self.fe_router_address = zmq_address.combine_address( self.conf.rpc_zmq_host, self.fe_router_socket.port) self.be_router_address = zmq_address.combine_address( self.conf.rpc_zmq_host, self.be_router_socket.port) self.pub_publisher = zmq_pub_publisher.PubPublisherProxy( conf, matchmaker) self._router_updater = RouterUpdater( conf, matchmaker, self.pub_publisher.host, self.fe_router_address, self.be_router_address)
def __init__(self, conf): self.conf = conf self._lock = threading.Lock() self._requests = {} self._poller = zmq_async.get_poller() self._executor = zmq_async.get_executor(method=self._run_loop) self._executor.execute()
def __init__(self, conf, context, matchmaker): self.conf = conf self.context = context self.matchmaker = matchmaker LOG.info(_LI("Running %s proxy") % self.PROXY_TYPE) self.poller = zmq_async.get_poller()
def __init__(self, driver, conf, matchmaker=None): super(ZmqServer, self).__init__(driver) self.matchmaker = matchmaker self.poller = zmq_async.get_poller() self.rpc_consumer = zmq_router_consumer.RouterConsumer( conf, self.poller, self) self.notify_consumer = self.rpc_consumer self.consumers = [self.rpc_consumer]
def __init__(self, driver, conf, matchmaker, targets_and_priorities): super(ZmqNotificationServer, self).__init__() self.driver = driver self.conf = conf self.matchmaker = matchmaker self.servers = [] self.poller = zmq_async.get_poller() self._listen(targets_and_priorities)
def __init__(self, conf): self.conf = conf self._lock = threading.Lock() self._requests = {} self._poller = zmq_async.get_poller() self._receive_response_versions = \ zmq_version.get_method_versions(self, 'receive_response') self._executor = zmq_async.get_executor(self._run_loop) self._executor.execute()
def __init__(self, conf, context, queue): super(IncomingQueueProxy, self).__init__(conf, context) self.poller = zmq_async.get_poller( zmq_concurrency='native') self.queue = queue self.socket = context.socket(zmq.ROUTER) self.socket.bind(zmq_address.get_broker_address(conf)) self.poller.register(self.socket, self.receive_request) LOG.info(_LI("Polling at incoming proxy ..."))
def __init__(self, conf, context, matchmaker): super(UniversalQueueProxy, self).__init__(conf, context) self.poller = zmq_async.get_poller(zmq_concurrency='native') self.router_socket = context.socket(zmq.ROUTER) self.router_socket.bind(zmq_address.get_broker_address(conf)) self.poller.register(self.router_socket, self._receive_in_request) LOG.info(_LI("Polling at universal proxy")) self.matchmaker = matchmaker self.pub_publisher = zmq_pub_publisher.PubPublisherProxy( conf, matchmaker)
def __init__(self, conf, context, matchmaker): super(UniversalQueueProxy, self).__init__(conf, context) self.matchmaker = matchmaker self.poller = zmq_async.get_poller(zmq_concurrency='native') self.router_socket = zmq_socket.ZmqRandomPortSocket( conf, context, zmq.ROUTER) self.poller.register(self.router_socket.handle, self._receive_in_request) self.router_address = zmq_address.combine_address( self.conf.rpc_zmq_host, self.router_socket.port)
def __init__(self, driver, conf, matchmaker, target, poller=None): super(ZmqServer, self).__init__() self.driver = driver self.conf = conf self.matchmaker = matchmaker self.target = target self.poller = poller or zmq_async.get_poller() self.router_consumer = zmq_router_consumer.RouterConsumer( conf, self.poller, self) self.sub_consumer = zmq_sub_consumer.SubConsumer( conf, self.poller, self) if conf.use_pub_sub else None self.consumers = [self.router_consumer] if self.sub_consumer: self.consumers.append(self.sub_consumer)
def __init__(self, conf, matchmaker, context): self.conf = conf self.matchmaker = matchmaker self.context = context self._ready = None # NOTE(ozamiatin): May be used for heartbeats when we # implement them self.sync_socket = zmq_socket.ZmqRandomPortSocket( self.conf, self.context, zmq.PULL) self.poller = zmq_async.get_poller() self.poller.register(self.sync_socket) self.sync_host = zmq_address.combine_address(self.conf.rpc_zmq_host, self.sync_socket.port)
def __init__(self, driver, conf, matchmaker=None): super(ZmqServer, self).__init__(driver) self.matchmaker = matchmaker self.poller = zmq_async.get_poller() self.router_consumer = zmq_router_consumer.RouterConsumerBroker( conf, self.poller, self) if conf.direct_over_proxy else \ zmq_router_consumer.RouterConsumer( conf, self.poller, self) self.sub_consumer = zmq_sub_consumer.SubConsumer( conf, self.poller, self) if conf.use_pub_sub else None self.notify_consumer = self.sub_consumer if conf.use_pub_sub \ else self.router_consumer self.consumers = [self.router_consumer] if self.sub_consumer: self.consumers.append(self.sub_consumer)
def __init__(self): self.poller = zmq_async.get_poller() self.thread = zmq_async.get_executor(self.poll_for_acknowledgements) self.thread.execute()
def setUp(self): super(TestPoller, self).setUp() self.poller = zmq_async.get_poller() self.ctx = zmq.Context() self.internal_ipc_dir = self.useFixture(fixtures.TempDir()).path self.ADDR_REQ = "ipc://%s/request1" % self.internal_ipc_dir
def test_when_eventlet_is_available_then_return_HoldReplyPoller(self): zmq_async.eventletutils.is_monkey_patched = lambda _: True actual = zmq_async.get_poller() self.assertTrue(isinstance(actual, green_poller.GreenPoller))
def test_invalid_config_value_raise_ValueError(self): invalid_opt = 'x' errmsg = 'Invalid zmq_concurrency value: x' with self.assertRaisesRegexp(ValueError, errmsg): zmq_async.get_poller(invalid_opt)
def test_when_eventlet_is_available_then_return_GreenPoller(self): zmq_async._is_eventlet_zmq_available = lambda: True actual = zmq_async.get_poller('eventlet') self.assertTrue(isinstance(actual, green_poller.GreenPoller))
def test_when_eventlet_is_unavailable_then_return_ThreadingPoller(self): zmq_async._is_eventlet_zmq_available = lambda: False actual = zmq_async.get_poller('eventlet') self.assertTrue(isinstance(actual, threading_poller.ThreadingPoller))
def test_when_native_poller_requested_then_return_ThreadingPoller(self): actual = zmq_async.get_poller('native') self.assertTrue(isinstance(actual, threading_poller.ThreadingPoller))
def test_when_no_arg_to_get_poller_then_return_default_poller(self): zmq_async._is_eventlet_zmq_available = lambda: True actual = zmq_async.get_poller() self.assertTrue(isinstance(actual, green_poller.GreenPoller))
def test_default_reply_poller_is_HoldReplyPoller(self): zmq_async._is_eventlet_zmq_available = lambda: True actual = zmq_async.get_poller() self.assertTrue(isinstance(actual, green_poller.GreenPoller))
def test_when_eventlet_is_available_then_return_GreenPoller(self): zmq_async.eventletutils.is_monkey_patched = lambda _: True poller = zmq_async.get_poller() self.assertIsInstance(poller, green_poller.GreenPoller)
def test_when_eventlet_is_unavailable_then_return_ThreadingPoller(self): zmq_async.eventletutils.is_monkey_patched = lambda _: False poller = zmq_async.get_poller() self.assertIsInstance(poller, threading_poller.ThreadingPoller)