def make_client(address, file_path, chunk_size): logger.info('client running') tcp = TCP() tcp.start() conn = dial(address) logger.info('client connected to server') data = [] while True: chunk = recv(conn, chunk_size) if len(chunk) == 0: break logger.info(f'chunk received. length: {len(chunk)}') data.append(chunk) data = b''.join(data) with open(file_path, 'wb') as fp: fp.write(data) logger.info(f'data saved. length: {len(data)}')
def rcv_test(): self.client_con = dial(self.address) data = b'' rcv_data = True while rcv_data: rcv_data = recv(self.client_con, 1) data += rcv_data return data
def rcv_test(): self.client_con = dial(self.address) data = b'' rcv_data = True while rcv_data: rcv_data = recv(self.client_con, 1) time.sleep(1) # slow consumer data += rcv_data return data
def rcv_test(): self.client_con = dial(self.address) rcv_data = True recv_size = 1024 * 1024 with open(client_file, 'wb') as f: while rcv_data: rcv_data = recv(self.client_con, recv_size) f.write(rcv_data) return ut.file_hash(client_file)
def rcv_test(pkg_sent_size=10, pkg_rcv_size=10): self.client_con = dial(self.address) data = initial_data size = pkg_sent_size while data: pkg, data = data[:size], data[size:] len_send = send(self.client_con, pkg) data = pkg[len_send:] + data data = b'' rcv_data = True while rcv_data: rcv_data = recv(self.client_con, pkg_rcv_size) data += rcv_data if len(data) == len(initial_data): break return initial_data, data
def send_test(pkg_sent_size=10, pkg_rcv_size=10): self.server = listen(self.address) self.server_con = accept(self.server) data = initial_data size = pkg_sent_size while data: pkg, data = data[:size], data[size:] len_send = send(self.server_con, pkg) data = pkg[len_send:] + data send(self.server_con, b"") data = b'' rcv_data = True while rcv_data: rcv_data = recv(self.server_con, pkg_rcv_size) data += rcv_data if len(data) == len(initial_data): break return initial_data, data