def __init__(self, gRPC_module, inner_service_port=None):
self.__peer_id = None if ObjectManager().peer_service is None else ObjectManager().peer_service.peer_id
# for peer_service, it refers to peer_inner_service / for rs_service, it refers to rs_admin_service
self.inner_server = grpc.server(futures.ThreadPoolExecutor(max_workers=conf.MAX_WORKERS))
self.outer_server = grpc.server(futures.ThreadPoolExecutor(max_workers=conf.MAX_WORKERS))
# members for private, It helps simplicity of code intelligence
self.__gRPC_module = gRPC_module
self.__port = 0
self.__inner_service_port = inner_service_port
self.__peer_target = None
if inner_service_port is not None: # It means this is Peer's CommonService not RS.
peer_port = inner_service_port - conf.PORT_DIFF_INNER_SERVICE
self.__peer_target = util.get_private_ip() + ":" + str(peer_port)
self.__subscriptions = queue.Queue() # tuple with (channel, stub)
self.__group_id = ""
# broadcast process
self.__broadcast_process = self.__run_broadcast_process()
self.__loop_functions = []
评论列表
文章目录