From c3c195b6ebaac90bcb96cbbc18ca637e755af874 Mon Sep 17 00:00:00 2001 From: Jiawei Wang Date: Sun, 15 Aug 2021 16:17:20 +0000 Subject: [PATCH] fix rpc port --- python/examples/encryption/test_client.py | 4 ++-- python/paddle_serving_server/serve.py | 11 ++++++++-- python/paddle_serving_server/server.py | 26 ++++++++++++++++------- 3 files changed, 29 insertions(+), 12 deletions(-) diff --git a/python/examples/encryption/test_client.py b/python/examples/encryption/test_client.py index 4d211a56..9ab7ce6d 100644 --- a/python/examples/encryption/test_client.py +++ b/python/examples/encryption/test_client.py @@ -28,5 +28,5 @@ test_reader = paddle.batch( batch_size=1) for data in test_reader(): - fetch_map = client.predict(feed={"x": data[0][0]}, fetch=["price"]) - print("{} {}".format(fetch_map["price"][0], data[0][1][0])) + fetch_map = client.predict(feed={"x": data[0][0]}, fetch=["save_infer_model/scale_0"]) + print("{} {}".format(fetch_map["save_infer_model/scale_0"][0], data[0][1][0])) diff --git a/python/paddle_serving_server/serve.py b/python/paddle_serving_server/serve.py index 101b7b4b..7b87bd56 100755 --- a/python/paddle_serving_server/serve.py +++ b/python/paddle_serving_server/serve.py @@ -61,6 +61,8 @@ def serve_args(): default=False, action="store_true", help="Use TensorRT Calibration") + parser.add_argument( + "--encryption_rpc_port", type=int, required=False, default=9292, help="Port of encryption model, only valid for arg.use_encryption_model") parser.add_argument( "--mem_optim_off", default=False, @@ -114,6 +116,7 @@ def start_standard_model(serving_port): # pylint: disable=doc-string-missing max_body_size = args.max_body_size use_mkl = args.use_mkl use_encryption_model = args.use_encryption_model + encryption_rpc_port = args.encryption_rpc_port use_multilang = args.use_multilang if model == "": @@ -160,6 +163,7 @@ def start_standard_model(serving_port): # pylint: disable=doc-string-missing server.set_precision(args.precision) server.set_use_calib(args.use_calib) server.use_encryption_model(use_encryption_model) + server.encryption_rpc_port(encryption_rpc_port) if args.product_name != None: server.set_product_name(args.product_name) if args.container_id != None: @@ -246,7 +250,8 @@ def start_gpu_card_model(index, gpuid, port, args): # pylint: disable=doc-strin workdir=workdir, port=port, device=device, - use_encryption_model=args.use_encryption_model) + use_encryption_model=args.use_encryption_model, + encryption_rpc_port=args.encryption_rpc_port) if gpuid >= 0: server.set_gpuid(gpuid) server.run_server() @@ -293,7 +298,8 @@ def start_multi_card(args, serving_port=None): # pylint: disable=doc-string-mis class MainService(BaseHTTPRequestHandler): def get_available_port(self): - default_port = 12000 + global encryption_rpc_port + default_port = encryption_rpc_port for i in range(1000): if port_is_available(default_port + i): return default_port + i @@ -381,6 +387,7 @@ if __name__ == "__main__": if args.name == "None": from .web_service import port_is_available if args.use_encryption_model: + encryption_rpc_port = args.encryption_rpc_port p_flag = False p = None serving_port = 0 diff --git a/python/paddle_serving_server/server.py b/python/paddle_serving_server/server.py index 6d8077ad..651aac61 100755 --- a/python/paddle_serving_server/server.py +++ b/python/paddle_serving_server/server.py @@ -430,6 +430,7 @@ class Server(object): port=9292, device="cpu", use_encryption_model=False, + encryption_rpc_port=9293, cube_conf=None): if workdir == None: workdir = "./tmp" @@ -442,7 +443,7 @@ class Server(object): if not self.port_is_available(port): raise SystemExit("Port {} is already used".format(port)) - + print("set brpc port here: {}".format(port)) self.set_port(port) self._prepare_resource(workdir, cube_conf) self._prepare_engine(self.model_config_paths, device, @@ -588,6 +589,9 @@ class MultiLangServer(object): def use_encryption_model(self, flag=False): self.encryption_model = flag + def encryption_rpc_port(self, port=9293): + self.encryption_rpc_port=port + def set_port(self, port): self.gport_ = port @@ -673,16 +677,22 @@ class MultiLangServer(object): port=9292, device="cpu", use_encryption_model=False, + encryption_rpc_port=9293, cube_conf=None): if not self._port_is_available(port): raise SystemExit("Port {} is already used".format(port)) - default_port = 12000 - self.port_list_ = [] - for i in range(1000): - if default_port + i != port and self._port_is_available(default_port - + i): - self.port_list_.append(default_port + i) - break + if use_encryption_model is True and self._port_is_available(encryption_rpc_port) is False: + raise SystemExit("Encryption Rpc Port {} is already used".format(encryption_rpc_port)) + if use_encryption_model is False: + default_port = 12000 + self.port_list_ = [] + for i in range(1000): + if default_port + i != port and self._port_is_available(default_port + i): + self.port_list_.append(default_port + i) + break + else: + self.port_list_ = [] + self.port_list_.append(encryption_rpc_port) self.bserver_.prepare_server( workdir=workdir, port=self.port_list_[0], -- GitLab