MCPcopy Create free account
hub / github.com/PaddlePaddle/FastDeploy / ZmqIpcClient

Class ZmqIpcClient

fastdeploy/inter_communicator/zmq_client.py:151–184  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

149
150
151class ZmqIpcClient(ZmqClientBase):
152 def __init__(self, name, mode):
153 self.name = name
154 self.mode = mode
155 self.file_name = f"/dev/shm/{name}.socket"
156 self.context = zmq.Context()
157 self.socket = self.context.socket(self.mode)
158
159 def _create_socket(self):
160 """create and return a ZeroMQ socket."""
161 self.context = zmq.Context()
162 return self.context.socket(self.mode)
163
164 def connect(self):
165 self._ensure_socket()
166 address = f"ipc://{self.file_name}"
167 self.address = address
168 self.socket.connect(address)
169
170 def close(self):
171 """
172 Close the socket and context.
173 """
174 llm_logger.info("ZMQ client is closing connection...")
175 try:
176 if self.socket is not None and not self.socket.closed:
177 self.socket.setsockopt(zmq.LINGER, 0)
178 self.socket.close()
179 if self.context is not None:
180 self.context.term()
181
182 except Exception as e:
183 llm_logger.warning(f"ZMQ client failed to close connection - {e}")
184 return

Callers 6

init_connectionsMethod · 0.90
create_zmq_clientMethod · 0.90
__init__Method · 0.90
__init__Method · 0.90
__init__Method · 0.90
setup_model_runnerMethod · 0.90

Calls

no outgoing calls

Tested by 1

setup_model_runnerMethod · 0.72