Beispiel #1
0
        elif payload[1] == 'reset':
            dispatch_status('reset', 'request', 'from', address[1])
            self.reset()

        elif payload[1] == 'get':
            dispatch_status('get', payload[0], 'from', address[1])
            self.get(payload, address)

        elif payload[1] == 'set':
            dispatch_status('set', payload[0], 'from', address[1])
            self.set(payload, address)

    def listen(self):
        while True:
            try:
                self.sock.settimeout(3)
                request, address = self.sock.recvfrom(1024)
                self.execute(request, address)

            except socket.timeout:
                sys.stderr.write('.\n')


if __name__ == '__main__':
    source, peers = parse_arguments()
    sock = bind_socket(NODE_IP, source)

    node = Node(sock, source, peers)
    node.listen()
Beispiel #2
0
    def read(self):
        while True:
            command = raw_input('> ').split()

            if command[0] == 'get' and len(command) != 2:
                sys.stderr.write('get requests requires only a key!\n')
                continue

            elif command[0] == 'set' and len(command) != 3:
                sys.stderr.write(
                    'get requests requires only a key and a value!\n')
                continue

            self.execute(command)

    def scan(self, instruction):
        command = instruction.split()
        self.execute(command)


if __name__ == '__main__':
    source, targets = parse_arguments()
    sock = bind_socket(NODE_IP, source)

    balancer = Balancer(sock, source, targets)
    thread.start_new_thread(balancer.listen, ())
    thread.start_new_thread(balancer.process, ())

    balancer.read()