Skip to content
Snippets Groups Projects
Commit 84f210d3 authored by Hang's avatar Hang
Browse files

fast push

parent 1b2d8cbc
No related branches found
No related tags found
1 merge request!10MP3 Log Version Ready
#!/bin/bash
../../venv/bin/python3 -u client.py $@
../venv/bin/python3 -u client.py $@
import random
import time
from constants import SERVER_IDENTIFIER, SERVER_ADDRESS, SERVER_PORT, ENCODING_FORMAT, MSG_LENGTH
from utils import gprint, pprint
import os
......
#!/bin/bash
../../venv/bin/python3 -u server.py $@
../venv/bin/python3 -u server.py $@
......@@ -460,11 +460,14 @@ def connect_with_all_servers(servers: dict, current_server_id: str, return_value
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host_ip_address = SERVER_ID_TO_IP_MAPPING[server[SERVER_IDENTIFIER]]
# server[SERVER_PORT] = SERVERS[CURRENT_SERVER_ID][SERVER_PORT]+1 # todo: to be deleted
address = (host_ip_address, server[server_id][ACCEPTING_PEER_PORT])
address = (host_ip_address, server[ACCEPTING_PEER_PORT])
pprint(f"[connect_with_all_servers] - {CURRENT_SERVER_ID} is trying to "
f"connect {(host_ip_address, server[ACCEPTING_PEER_PORT])}")
s.connect(address)
connect_info[server_id] = s
gprint(f"[Connect] - "
f"Connecting to {server[SERVER_IDENTIFIER]}: {host_ip_address}:{server[server_id][ACCEPTING_PEER_PORT]} success!")
f"Connecting to {server[SERVER_IDENTIFIER]}: {host_ip_address}:"
f"{server[ACCEPTING_PEER_PORT]} success!")
except Exception:
rprint(f"[Connect] - Connection to "
f"{server[SERVER_IDENTIFIER]} failed. "
......@@ -580,7 +583,9 @@ def client_handler(conn, SELF_NODE):
operation_json = format_operation_and_timestamp_json(operation, timestamp)
gprint(f'[client_handler] - operation [{operation}] received success!')
if operation.startswith('BEGIN'):
if not operation:
break
elif operation.startswith('BEGIN'):
send_msg_to_socket("OK", conn)
else:
target_server_id = extract_target_server(operation)
......@@ -725,6 +730,8 @@ def accepting_peer_servers(SELF_NODE):
try:
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind((CURRENT_SERVER_IP, SERVERS[CURRENT_SERVER_ID][ACCEPTING_PEER_PORT]))
pprint(f'[accepting_peer_servers] - {CURRENT_SERVER_ID} current '
f'bind at {(CURRENT_SERVER_IP, SERVERS[CURRENT_SERVER_ID][ACCEPTING_PEER_PORT])}')
server.listen()
# print(f"[LISTENING] Server is listening on {ADDR}") # DEBUG
while True:
......@@ -740,31 +747,31 @@ def accepting_peer_servers(SELF_NODE):
server.close()
def accepting_connections(SELF_NODE):
try:
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind((CURRENT_SERVER_IP, CURRENT_SERVER_PORT))
server.listen()
# print(f"[LISTENING] Server is listening on {ADDR}") # DEBUG
while True:
conn, addr = server.accept()
if addr[0] in SERVERS.keys():
thread = threading.Thread(target=server_handler, args=[conn, SELF_NODE])
gprint(
f'[accepting_peer_servers] - peer server [{addr}] connect to server [{CURRENT_SERVER_ID}] success!')
thread.start()
else:
thread = threading.Thread(target=client_handler, args=[conn, SELF_NODE])
gprint(f'[accepting_clients] - client [{addr}] connect to coordinator [{CURRENT_SERVER_ID}] success!')
thread.start()
# client_send_socket = server.connect(addr)
# gprint(f'[accepting_peer_servers] - server [{CURRENT_SERVER_ID}] connect to peer server [{addr}] success!')
# thread = threading.Thread(target=server_handler, args=[conn, SELF_NODE])
# thread.start()
except Exception as e:
rprint(f"[ERROR] accepting_peer_servers error:{e.__class__.__name__}.{e}.{traceback.format_exc()}")
finally:
server.close()
# def accepting_connections(SELF_NODE):
# try:
# server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# server.bind((CURRENT_SERVER_IP, CURRENT_SERVER_PORT))
# server.listen()
# # print(f"[LISTENING] Server is listening on {ADDR}") # DEBUG
# while True:
# conn, addr = server.accept()
# if addr[0] in SERVERS.keys():
# thread = threading.Thread(target=server_handler, args=[conn, SELF_NODE])
# gprint(
# f'[accepting_peer_servers] - peer server [{addr}] connect to server [{CURRENT_SERVER_ID}] success!')
# thread.start()
# else:
# thread = threading.Thread(target=client_handler, args=[conn, SELF_NODE])
# gprint(f'[accepting_clients] - client [{addr}] connect to coordinator [{CURRENT_SERVER_ID}] success!')
# thread.start()
# # client_send_socket = server.connect(addr)
# # gprint(f'[accepting_peer_servers] - server [{CURRENT_SERVER_ID}] connect to peer server [{addr}] success!')
# # thread = threading.Thread(target=server_handler, args=[conn, SELF_NODE])
# # thread.start()
# except Exception as e:
# rprint(f"[ERROR] accepting_peer_servers error:{e.__class__.__name__}.{e}.{traceback.format_exc()}")
# finally:
# server.close()
if __name__ == '__main__':
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment