def __init__(self, service_name, metrics, **kwargs): """ In addition to the two named positional arguments, this constructor expects keyword arguments abiding by the Redis transport settings schema. :param service_name: The name of the service to which this transport will send requests (and from which it will receive responses) :type service_name: union[str, unicode] :param metrics: The optional metrics recorder :type metrics: MetricsRecorder """ super(RedisClientTransport, self).__init__(service_name, metrics) if 'maximum_message_size_in_bytes' not in kwargs: kwargs['maximum_message_size_in_bytes'] = DEFAULT_MAXIMUM_MESSAGE_BYTES_CLIENT self.client_id = uuid.uuid4().hex self._send_queue_name = make_redis_queue_name(service_name) self._receive_queue_name = '{send_queue_name}.{client_id}{response_queue_specifier}'.format( send_queue_name=self._send_queue_name, client_id=self.client_id, response_queue_specifier=BaseRedisClient.RESPONSE_QUEUE_SPECIFIER, ) self._requests_outstanding = 0 self.core = RedisTransportCore(service_name=service_name, metrics=metrics, metrics_prefix='client', **kwargs)
def __init__(self, service_name, metrics, **kwargs): # type: (six.text_type, MetricsRecorder, **Any) -> None """ In addition to the two named positional arguments, this constructor expects keyword arguments abiding by the Redis transport settings schema. :param service_name: The name of the service to which this transport will send requests (and from which it will receive responses) :param metrics: The optional metrics recorder """ super(RedisClientTransport, self).__init__(service_name, metrics) self.client_id = uuid.uuid4().hex self._send_queue_name = make_redis_queue_name(service_name) self._receive_queue_name = '{send_queue_name}.{client_id}{response_queue_specifier}'.format( send_queue_name=self._send_queue_name, client_id=self.client_id, response_queue_specifier=BaseRedisClient.RESPONSE_QUEUE_SPECIFIER, ) self._requests_outstanding = 0 self._previous_error_was_transport_problem = False # noinspection PyArgumentList self.core = RedisTransportClientCore(service_name=service_name, metrics=metrics, **kwargs)
def __init__(self, service_name, metrics, **kwargs): super(RedisServerTransport, self).__init__(service_name, metrics) self._receive_queue_name = make_redis_queue_name(service_name) self.core = RedisTransportCore(service_name=service_name, metrics=metrics, metrics_prefix='server', **kwargs)
def __init__(self, service_name, metrics, **kwargs): # type: (six.text_type, MetricsRecorder, **Any) -> None """ In addition to the two named positional arguments, this constructor expects keyword arguments abiding by the Redis transport settings schema. :param service_name: The name of the service for which this transport will receive requests and send responses :param metrics: The optional metrics recorder """ super(RedisServerTransport, self).__init__(service_name, metrics) self._receive_queue_name = make_redis_queue_name(service_name) # noinspection PyArgumentList self.core = RedisTransportServerCore(service_name=service_name, metrics=metrics, **kwargs)
def __init__(self, service_name, metrics, **kwargs): """ In addition to the two named positional arguments, this constructor expects keyword arguments abiding by the Redis transport settings schema. :param service_name: The name of the service for which this transport will receive requests and send responses :type service_name: union[str, unicode] :param metrics: The optional metrics recorder :type metrics: MetricsRecorder """ super(RedisServerTransport, self).__init__(service_name, metrics) if 'maximum_message_size_in_bytes' not in kwargs: kwargs['maximum_message_size_in_bytes'] = DEFAULT_MAXIMUM_MESSAGE_BYTES_SERVER self._receive_queue_name = make_redis_queue_name(service_name) self.core = RedisTransportCore(service_name=service_name, metrics=metrics, metrics_prefix='server', **kwargs)