Exemple #1
0
def test3():

    tcpconf = ('tcp',('127.0.0.1',1234))
    host = init_host(tcpconf)

    registry = host.spawn_id('1','interval','Registry',[])
    registry.init_start()
Exemple #2
0
def test3():
    tcpconf = ('tcp', ('127.0.0.1', 1259))
    host = init_host(tcpconf)

    registry = host.lookup('tcp://127.0.0.1:6664/first/Registry/1')

    registry.bind('third', host)
def start_remote_node():            
    nodes_h = {}
    num_nodes = 100
    cont = 21 + 50
    retry = 0
    index = 0
#    tcpconf = ('tcp', ('127.0.0.1', 6375))
#    host = init_host(tcpconf)
    momconf = ('mom',{'name':'c1','ip':'127.0.0.1','port':61613,'namespace':'/topic/test'})
    host = init_host(momconf)
    
    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'chord_protocol', 'Node', [])
        cont += 1
    for i in range(num_nodes):    
        nodes_h[i].init_node()
    remote_aref = 'mom://s1/chord_protocol/Node/1'
#    remote_aref = 'atom://127.0.0.1:1238/chord/Node/1'
    remote_node = host.lookup(remote_aref)
    while index < num_nodes:
        try:
            if(nodes_h[index].join(remote_node)):
                print "True"
            interval(5, update, nodes_h[index])
            index += 1
            retry = 0
        except TimeoutError:
            retry += 1
            if retry > 3:
                break
        
    interval(200, show, nodes_h[0])
    interval(200, show, nodes_h[num_nodes/2])
    interval(200, show, nodes_h[num_nodes - 1])
def start_node():
    nodes_h = {}
    num_nodes = 50
    #    cont = 1
    retry = 0
    j = 0
    #    tcpconf = ('tcp', ('127.0.0.1', 1432))
    #    host = init_host(tcpconf)
    sample = uniform(num_nodes, I, MAX)
    print sorted(sample)
    momconf = ("mom", {"name": "s1", "ip": "127.0.0.1", "port": 61613, "namespace": "/topic/test"})
    host = init_host(momconf)
    #    log = host.spawn_id('log','chord_log','LogUML',[])
    #    host.set_tracer(log)
    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(sample[i]), "chord_with_succlist", "SuccNode", [])
    #        cont += 1
    for i in range(num_nodes):
        nodes_h[i].init_node()

    while j < num_nodes:
        try:
            if nodes_h[j].join(nodes_h[0]):
                print "True"

            interval(5, update, nodes_h[j])
        except TimeoutError:
            retry += 1
            if retry > 3:
                break
        else:
            j += 1
    interval(200, show, nodes_h[0])
    interval(200, show, nodes_h[num_nodes / 2])
    interval(200, show, nodes_h[num_nodes - 1])
def start_remote_node():
    nodes_h = {}
    num_nodes = 50
    #     cont = 21 + 50
    retry = 0
    j = 0
    sample = uniform(num_nodes, I, MAX)
    #    tcpconf = ('tcp', ('127.0.0.1', 6377))
    #    host = init_host(tcpconf)
    momconf = ("mom", {"name": "c2", "ip": "127.0.0.1", "port": 61613, "namespace": "/topic/test"})
    host = init_host(momconf)
    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(sample[i]), "chord_with_succlist", "SuccNode", [])
    #         cont += 1
    for i in range(num_nodes):
        nodes_h[i].init_node()
    remote_aref = "mom://s1/chord_with_succlist/SuccNode/7"
    #    remote_aref = 'atom://127.0.0.1:1432/chord/Node/2'
    remote_node = host.lookup(remote_aref)

    while j < num_nodes:
        try:
            if nodes_h[j].join(remote_node):
                print "True"
            interval(5, update, nodes_h[j])
            j += 1
            retry = 0
        except (TimeoutError):
            retry += 1
            if retry > 3:
                break

    interval(200, show, nodes_h[0])
    interval(200, show, nodes_h[num_nodes / 2])
    interval(200, show, nodes_h[num_nodes - 1])
Exemple #6
0
def example1():
    nodes = [1,8,14,21,32,38,42,48,51,56]
    nodes_h = {}

    tcpconf = ('tcp', ('127.0.0.1', 1234))
    host = init_host(tcpconf)

    # Create and initialize nodes
    for i in range(len(nodes)):
        print 'iteration', i
        nodes_h[i] = host.spawn_id(str(nodes[i]), 'chord_protocol', 'Node', [])
        nodes_h[i].init_node()

    for i in range(len(nodes)):
        j = 0 if i is 0 else i-1
        try:
            nodes_h[i].join(nodes_h[j])
        except:
            print 'Node %s fails' % str(i)
        else:
            interval_host(host, 1, update, nodes_h[i])

    interval_host(host, 30, show, nodes_h[0])
    interval_host(host, 31, show, nodes_h[5])
    interval_host(host, 32, show, nodes_h[9])
Exemple #7
0
def start_node():            
    nodes_h = {}
    num_nodes = 10
    cont = 1
    retry = 0
    index=0
    tcpconf = ('tcp', ('127.0.0.1', 1238))
    host = init_host(tcpconf)
#    momconf = ('mom',{'name':'s1','ip':'127.0.0.1','port':61613,'namespace':'/topic/test'})
#    host = init_host(momconf)

    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'scribe', 'ScribeNode', [])
        cont += 1
    for i in range(num_nodes):    
        nodes_h[i].init_node()
    
    while index < num_nodes:
        try:
            if(nodes_h[index].join(nodes_h[0])):
                print "True"
            interval(5, update, nodes_h[index])
            index += 1
            retry = 0
#            sleep(0.2)
        except TimeoutError:
            retry += 1
            if retry > 3:
                index += 1
    num_nodes -= 1
    "Lookup test"
    menu(host, nodes_h, num_nodes)
Exemple #8
0
def start_node():
    nodes_h = {}
    num_nodes = 20
    cont = 21 
    retry = 0
    j=0
    tcpconf = ('tcp', ('127.0.0.1', 6377))
    host = init_host(tcpconf)
    
    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'chord_remote', 'Node', [])
        cont += 1
    for i in range(num_nodes):    
        nodes_h[i].init_node()
        
    remote_aref = 'atom://127.0.0.1:1432/chord/Node/2'
    remote_node = host.lookup(remote_aref)

    while j < num_nodes:
        try:
            if(nodes_h[j].join(remote_node)):
                print "True"
            interval(30, stablilize, nodes_h[j])
            interval(30, fix_finger, nodes_h[j])
            j += 1
            retry = 0
        except(TimeoutError):
            retry += 1
            if retry > 3:
                break
    
    interval(100, show, nodes_h[0])
    interval(100, show, nodes_h[num_nodes/2])
    interval(100, show, nodes_h[num_nodes - 1])
def create_host():
    start_controller("pyactive_thread")
    tcpconf = ('tcp', ('127.0.0.1', 9899))
    global host
    host = init_host(tcpconf)
    global remote_host
    remote_host = host.lookup(settings.PYACTIVE_URL+'controller/Host/0')
Exemple #10
0
def test3():

#    tcpconf = ('tcp',('127.0.0.1',6664))
    host = init_host()

    test = host.spawn_id('1','launch','Test',[])
    test.hello_world()
Exemple #11
0
def start_node():
    nodes_h = {}
    num_nodes = 20
    cont = 1
    retry = 0
    j = 0
    tcpconf = ('tcp', ('127.0.0.1', 1432))
    host = init_host(tcpconf)
    log = host.spawn_id('log', 'chord_log', 'LogUML', [])
    host.set_tracer(log)
    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'chord', 'Node', [])
        cont += 1
    for i in range(num_nodes):
        nodes_h[i].init_node()
    while j < num_nodes:
        try:
            if (nodes_h[j].join(nodes_h[0])):
                print "True"
            interval(30, stablilize, nodes_h[j])
            interval(30, fix_finger, nodes_h[j])
            j += 1
            retry = 0
        except TimeoutError:
            retry += 1
            if retry > 3:
                break
    interval(100, show, nodes_h[0])
    interval(100, show, nodes_h[num_nodes / 2])
    interval(100, show, nodes_h[num_nodes - 1])
    interval(15, save_log, log)
Exemple #12
0
def test3():
    momconf = ('mom',{'name':'c1','ip':'127.0.0.1','port':61613,'namespace':'/topic/test'})
    host = init_host(momconf)
    #host = init_host(('127.0.0.1',4329),True)
    #host = Host(host)
    #oref = 'env2:simple:s1:Server'
    aref = 'mom://s1/moms1/Server/0'
    ref = host.lookup(aref)
    
    n1 = host.spawn_id('c1', 'momc1', 'Client', [ref])
    #for i in range(100):
    #    ref.resta(34,2)

    n1.send_substract(34,2)
    print n1.send_add(6,8)
    for i in range(3):
        s = n1.send_add(56,4)
        print s,'ok'
#    try:
#        ref.wait_a_lot()
#    except TimeoutError:
#        print 'correct timeout'
    
    #sleep(1)
    host.shutdown()
Exemple #13
0
def test3():
    
    tcpconf = ('tcp',('127.0.0.1',6664))
    host = init_host(tcpconf)
    
    registry = host.spawn_id('1','first','Registry',[])
    registry.bind('first', host)
Exemple #14
0
def client_test():

    tcpconf = ('tcp',('127.0.0.1',4321))
    host = init_host(tcpconf)
    server = host.lookup('tcp://127.0.0.1:1234/interval/Registry/1')
    server.hello()
    print server.hello_sync()
Exemple #15
0
def test3():
    tcpconf = ('tcp', ('127.0.0.1', 1234))
    host = init_host(tcpconf)

    server = host.spawn_id('0', 's1', 'Server', [])
    server.substract(4, 3)
    print server.add(66, 7)
Exemple #16
0
def example2():

    nodes_h = {}

    tcpconf = ('tcp', ('127.0.0.1', 1234))
    host = init_host(tcpconf)

    t1  = time()
    # Create and initialize nodes
    for i in range(100):
        nodes_h[i] = host.spawn_id(str(id()), 'chord_protocol', 'Node', [])
        nodes_h[i].init_node()

    for i in range(len(nodes_h)):
        j = 0 if i is 0 else i-1
        try:
            nodes_h[i].join(nodes_h[j])
        except:
            print 'Node %s fails' % str(i)
        else:
            interval_host(host, 0.5, update, nodes_h[i])

    t2 = time()
    print 'Time to create 100 nodes'
    print t2 - t1

    # Wait to give time to chord to fix its tables.
    # Note that if we use the class chord_improved we will need less time to fix the node tables.
    sleep(30)

    key = hash('pedro')
    print key
    found = nodes_h[0].find_predecessor(key)
    print found.get_id()
Exemple #17
0
def test3():
    tcpconf = ('tcp',('127.0.0.1',1234))
    host = init_host(tcpconf)

    server = host.spawn_id('0','s1','Server',[])
    server.substract(4,3)
    print server.add(66,7)
Exemple #18
0
def testN():
    net_conf = ('tcp',('127.0.0.1',6664))
    host = init_host(net_conf)

    print 'TEST ',NUM_NODES,' nodes and', NUM_MSGS, "messages."

    nf  = host.spawn_id('init', 'ring3','Node',['nf'])

    ni = nf;
    for i in range (NUM_NODES-2):
        ni = host.spawn_id(str(i), 'ring3','Node',[('n',i),ni])

    n1 = host.spawn_id('end','ring3','Node',['n1',ni])

    nf.set_next(n1)
    print 'start time!!'
    init = time()

    nf.init_token()

    while(not n1.is_finished()):
        sleep(0.01)

    end = time()

    print ((end - init)*1000),' ms.'
Exemple #19
0
def start_remote_node():
    nodes_h = {}
    num_nodes = 10
    cont = 11
    retry = 0
    index=0
    tcpconf = ('tcp', ('127.0.0.1', 6377))
    host = init_host(tcpconf)
#    momconf = ('mom',{'name':'c1','ip':'127.0.0.1','port':61613,'namespace':'/topic/test'})
#    host = init_host(momconf)
    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'scribe', 'ScribeNode', [])
        cont += 1
    for i in range(num_nodes):    
        nodes_h[i].init_node()
#    remote_aref = 'mom://s1/scribe/ScribeNode/1'   
    remote_aref = 'atom://127.0.0.1:1238/scribe/ScribeNode/2'
    remote_node = host.lookup(remote_aref)

    while index < num_nodes:
        try:
            if(nodes_h[index].join(remote_node)):
                print "True"
            interval(5, update, nodes_h[index])
            index += 1
            retry = 0
        except(TimeoutError):
            retry += 1
            print 'Timeout Error: Attempts '+retry
            if retry > 3:
                index += 1
    menu(host, nodes_h, num_nodes)
Exemple #20
0
def test3():
    tcpconf = ('tcp',('127.0.0.1',1259))
    host = init_host(tcpconf)

    registry = host.lookup('tcp://127.0.0.1:6664/first/Registry/1')

    registry.bind('third', host)
Exemple #21
0
def start_node():            
    nodes_h = {}
    num_nodes = 30
    cont = 21
    retry = 0
    index = 0
    tcpconf = ('tcp', ('127.0.0.1', 6375))
    host = init_host(tcpconf)
    
    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'chord_remote', 'Node', [])
        cont += 1
    for i in range(num_nodes):    
        nodes_h[i].init_node()
        
    remote_aref = 'atom://127.0.0.1:1238/chord/Node/1'
    remote_node = host.lookup(remote_aref)
    while index < num_nodes:
        try:
            if(nodes_h[index].join(remote_node)):
                print "True"
            interval(15, update, nodes_h[index])
            index += 1
            retry = 0
        except TimeoutError:
            retry += 1
            if retry > 3:
                break
    interval(100, show, nodes_h[0])
    interval(100, show, nodes_h[num_nodes/2])
    interval(100, show, nodes_h[num_nodes - 1])
def test():
    host = init_host()

    # parameters 1 = 'id', 'test_async' = module name, 'Server' = class name
    n1 = host.spawn_id('1', 'hello_world_async', 'Server', [])

    n1.hello_world()
Exemple #23
0
def start_node():
    #Canviar per fer el lookup
    nodes_h = {}
    num_nodes = 20
    cont = 1
    retry = 0
    index = 0
    tcpconf = ('tcp', ('127.0.0.1', 1238))
    host = init_host(tcpconf)
    #    log = host.spawn_id('log','chord_log','LogUML',[])
    #    host.set_tracer(log)

    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'chord', 'Node', [])
        cont += 1
    for i in range(num_nodes):
        nodes_h[i].init_node()

    while index < num_nodes:
        try:
            if (nodes_h[index].join(nodes_h[0])):
                print "True"
            interval(15, update, nodes_h[index])
            index += 1
            retry = 0
        except TimeoutError:
            retry += 1
            if retry > 3:
                break
    interval(100, show, nodes_h[0])
    interval(100, show, nodes_h[num_nodes / 2])
    interval(100, show, nodes_h[num_nodes - 1])
Exemple #24
0
def testN():
    
    host = init_host()
    
    print 'TEST ',NUM_NODES,' nodes and', NUM_MSGS, "messages."
    
    nf  = host.spawn_id('0','ring3','Node',['nf'])
    
    ni = nf;
    for i in range (1, NUM_NODES-2):    
        ni = host.spawn_id(str(i), 'ring3','Node',[('n',i),ni]) 
    
    n1 = host.spawn_id(str(NUM_NODES -1), 'ring3','Node',['n1',ni]) 
    
    nf.set_next(n1)  
      
    init = time()
      
    n1.init_token()
  
    while(nf.is_finished()):
        pass
        
    end = time()   
    print 'N1', n1
    print ((end - init)*1000),' ms.' 
Exemple #25
0
def test():
    lP = []
    lA = []
    lL = []
    start_controller('pyactive_thread')
    host = init_host()
#     log = host.spawn_id('log', 'main', 'LogUML', [])
#     host.set_tracer(log)
#     interval(1, save_log, log)
    for i in range(0, N_LEARNERS):
        l = host.spawn_id(str(i), 'paxos_protocol', 'Learner',[N_ACCEPTORS])
        lL.append(l)
    for i in range(0, N_ACCEPTORS):
        a = host.spawn_id(str(i+N_LEARNERS), 'paxos_protocol', 'Acceptor', [N_ACCEPTORS])
        a.set_multi(lL)
        lA.append(a)    
    for i in range(0,N_PROPOSERS):
        p = host.spawn_id(str(i+N_LEARNERS+N_ACCEPTORS+5), 'paxos_protocol', 'Proposer', [N_ACCEPTORS])
        
        num = int(random.random() * 100)
        print i, num
        p.set_proposal(num)
        lP.append(p)
    lP[0].set_multi([lA[0], lA[1],lA[2]])
    lP[1].set_multi([lA[2], lA[3],lA[4]])
    lP[2].set_multi([lA[0], lA[1],lA[2]])
    lP[3].set_multi([lA[2], lA[3],lA[4]])
#     p = AMulti(lP)
#     p.prepare()
    lP[3].prepare()
    lP[0].prepare()
    lP[1].prepare()
    lP[2].prepare()
Exemple #26
0
def start_node():
    nodes_h = {}
    num_nodes = 30
    cont = 21
    retry = 0
    index = 0
    tcpconf = ('tcp', ('127.0.0.1', 6375))
    host = init_host(tcpconf)

    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'chord_remote', 'Node', [])
        cont += 1
    for i in range(num_nodes):
        nodes_h[i].init_node()

    remote_aref = 'atom://127.0.0.1:1238/chord/Node/1'
    remote_node = host.lookup(remote_aref)
    while index < num_nodes:
        try:
            if (nodes_h[index].join(remote_node)):
                print "True"
            interval(15, update, nodes_h[index])
            index += 1
            retry = 0
        except TimeoutError:
            retry += 1
            if retry > 3:
                break
    interval(100, show, nodes_h[0])
    interval(100, show, nodes_h[num_nodes / 2])
    interval(100, show, nodes_h[num_nodes - 1])
Exemple #27
0
def test3():
    momconf = ('mom',{'name':'c1','ip':'127.0.0.1','port':61613,'namespace':'/topic/test_edgar'})
    host = init_host(momconf)
    #host = init_host(('127.0.0.1',4329),True)
    #host = Host(host)
    #oref = 'env2:simple:s1:Server'
    aref = 'mom://s1/server/Server/0'
    ref = host.lookup(aref)
    nodes = {}
    for i in range(1, 100):
        nodes[i] = host.spawn_id(str(i), 'client', 'Client', [ref])
        nodes[i].subscribe()

    #for i in range(100):
    #    ref.resta(34,2)

#    try:
#        ref.wait_a_lot()
#    except TimeoutError:
#        print 'correct timeout'

    #sleep(1)
    #host.shutdown()
    check_ref_list = []
    for node in nodes.values():
        reference = node.get_reference()
        if not reference in check_ref_list:
            check_ref_list.append(reference)
        else:
            print 'error: some client has the same reference'
    print 'all ok'
    print ref.get_references()
Exemple #28
0
def start_node():            
    nodes_h = {}
    num_nodes = 20
    cont = 1
    retry = 0
    j = 0
    tcpconf = ('tcp', ('127.0.0.1', 1432))
    host = init_host(tcpconf)
    log = host.spawn_id('log','chord_log','LogUML',[])
    host.set_tracer(log)
    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'chord', 'Node', [])
        cont += 1
    for i in range(num_nodes):    
        nodes_h[i].init_node()
    while j < num_nodes:
        try:
            if(nodes_h[j].join(nodes_h[0])):
                print "True"
            interval(30, stablilize, nodes_h[j])
            interval(30, fix_finger, nodes_h[j])
            j += 1
            retry = 0
        except TimeoutError:
            retry += 1
            if retry > 3:
                break
    interval(100, show, nodes_h[0])
    interval(100, show, nodes_h[num_nodes /2])
    interval(100, show, nodes_h[num_nodes -1])
    interval(15, save_log, log)
def test():
    lP = []
    lA = []
    lL = []
    host = init_host()
#     log = host.spawn_id('log', 'main', 'LogUML', [])
#     host.set_tracer(log)
#      interval(1, save_log, log)
    for i in range(0, N_LEARNERS):
        l = host.spawn_id(str(i), 'paxos_protocol_multi_instance', 'Learner',[N_ACCEPTORS])
        lL.append(l)
    for i in range(0, N_ACCEPTORS):
        a = host.spawn_id(str(i+N_LEARNERS), 'paxos_protocol_multi_instance', 'Acceptor', [N_ACCEPTORS])
        print 'hola edsa'
        a.set_multi(lL)
        lA.append(a)    
    for i in range(0,N_PROPOSERS):
        p = host.spawn_id(str(i+N_LEARNERS+N_ACCEPTORS+5), 'paxos_protocol_multi_instance', 'Proposer', [N_ACCEPTORS])
       
        lP.append(p)
    lP[0].set_multi([lA[0], lA[1],lA[2]])
    lP[1].set_multi([lA[2], lA[3],lA[4]])
    lP[2].set_multi([lA[0], lA[1],lA[2]])
    lP[3].set_multi([lA[2], lA[3],lA[4]])
#     p = AMulti(lP)
#     p.prepare()
    for a in range(10):
        num = int(random.random() * 100)
        print a, num
        num_p = int(random.random() * 100%N_PROPOSERS)
        lP[num_p].set_proposal(num)
Exemple #30
0
def test3():
    momconf = ('mom',{'name':'s1','ip':'127.0.0.1','port':61613,'namespace':'/topic/test_edgar'})
    host = init_host(momconf)
    #host = init_host(('127.0.0.1',1290),True)
    #host = Host(hostname)
    server = host.spawn_id('0','server','Server',[])
    print 'Server running...'
Exemple #31
0
def start_node():
    nodes_h = {}
    num_nodes = 20
    cont = 21 
    retry = 0
    j=0
    tcpconf = ('tcp', ('127.0.0.1', 6377))
    host = init_host(tcpconf)
    
    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'chord_remote', 'Node', [])
        cont += 1
    for i in range(num_nodes):    
        nodes_h[i].init_node()
        
    remote_aref = 'atom://127.0.0.1:1432/chord/Node/2'
    remote_node = host.lookup(remote_aref)

    while j < num_nodes:
        try:
            if(nodes_h[j].join(remote_node)):
                print "True"
            interval(30, stablilize, nodes_h[j])
            interval(30, fix_finger, nodes_h[j])
            j += 1
            retry = 0
        except(TimeoutError):
            retry += 1
            if retry > 3:
                break
    
    interval(100, show, nodes_h[0])
    interval(100, show, nodes_h[num_nodes/2])
    interval(100, show, nodes_h[num_nodes - 1])
Exemple #32
0
def test3():
    tcpconf = ("tcp", ("127.0.0.1", 1234))
    host = init_host(tcpconf)

    server = host.spawn_id("0", "s1", "Server", [])
    server.substract(4, 3)
    print server.add(66, 7)
Exemple #33
0
def test():
    host = init_host()
    e1 = host.spawn_id('1', 'actor5c', 'Echo', [])
    bot = host.spawn_id('1', 'actor5c', 'Bot', [])
    bot.set_channel()
    bot.insult()
    sleep(4)
Exemple #34
0
def start_node():            
    #Canviar per fer el lookup
    nodes_h = {}
    num_nodes = 20
    cont = 1
    retry = 0
    index=0
    tcpconf = ('tcp', ('127.0.0.1', 1238))
    host = init_host(tcpconf)
#    log = host.spawn_id('log','chord_log','LogUML',[])
#    host.set_tracer(log)

    for i in range(num_nodes):
        nodes_h[i] = host.spawn_id(str(cont), 'chord', 'Node', [])
        cont += 1
    for i in range(num_nodes):    
        nodes_h[i].init_node()
    
    while index < num_nodes:
        try:
            if(nodes_h[index].join(nodes_h[0])):
                print "True"
            interval(15, update, nodes_h[index])
            index += 1
            retry = 0
        except TimeoutError:
            retry += 1
            if retry > 3:
                break
    interval(100, show, nodes_h[0])
    interval(100, show, nodes_h[num_nodes/2])
    interval(100, show, nodes_h[num_nodes - 1])
Exemple #35
0
def example1():
    nodes = [1,8,14,21,32,38,42,48,51,56]
    nodes_h = {}

    tcpconf = ('tcp', ('127.0.0.1', 1234))
    host = init_host(tcpconf)

    # Create and initialize nodes
    for i in range(len(nodes)):
        nodes_h[i] = host.spawn_id(str(nodes[i]), 'chord_protocol', 'Node', [])
        nodes_h[i].init_node()

    for i in range(len(nodes)):
        j = 0 if i is 0 else i-1
        try:
            nodes_h[i].join(nodes_h[j])
        except:
            print 'Node %s fails' % str(i)
        else:
            interval_host(host, 0.5, update, nodes_h[i])

    # Wait to give time to chord to fix its tables.
    sleep(5)

    found = nodes_h[0].find_successor(40)
    print 'found', found.get_id()
Exemple #36
0
def test3():
    
#    tcpconf = ('tcp',('127.0.0.1',6664))
    host = init_host()
 
    test = host.spawn_id('1','launch','Test',[])
    test.hello_world()
    host.shutdown()
Exemple #37
0
def test3():
    momconf = ('mom',{'name':'s1','ip':'127.0.0.1','port':61613,'namespace':'/topic/test'})
    host = init_host(momconf)
    #host = init_host(('127.0.0.1',1290),True)
    #host = Host(hostname)
    server = host.spawn_id('0','moms1','Server',[])
    server.substract(4,3)
    print server.add(66,7)
Exemple #38
0
def test3():

    tcpconf = ('tcp', ('127.0.0.1', 6664))
    host = init_host(tcpconf)

    registry = host.spawn_id('1', 'first', 'Registry', [])
    print 'hola'
    registry.bind('first', host)
Exemple #39
0
def test_log():
    host = init_host()
    log = host.spawn_id('log', 'log', 'Log', [])
    host.set_tracer(log)
    ref = host.spawn_id('1', 'log', 'Server', [])
    ref.substract(6, 5)
    print ref.add(5, 5)
    sleep(1)
Exemple #40
0
def client_test():

    tcpconf = ('tcp', ('127.0.0.1', 4321))
    host = init_host(tcpconf)
    server = host.lookup('tcp://127.0.0.1:1234/server/Registry/1')
    server.hello()
    print server.hello_sync()
    host.shutdown()
Exemple #41
0
def test1():
    host = init_host()
    n2 = host.spawn_id('2','parallel1','Node',['n2'])
    n1 = host.spawn_id('1','parallel1','Node',['n1',n2]) 
    n3 = host.spawn_id('3','parallel1','Node',['n3',n1]) 
    n1.start()
    sleep(2)
    n3.start_n3()
    sleep(15)   
Exemple #42
0
def test3():
    tcpconf = ('tcp', ('127.0.0.1', 1236))
    host = init_host(tcpconf)

    registry = host.lookup('tcp://127.0.0.1:6664/first/Registry/1')

    registry.bind('fourth', host)

    for atom in registry.get_values():
        print atom.get_aref()
Exemple #43
0
def create_local_host():
    tcpconf = ('tcp', (settings.PYACTIVE_IP, settings.PYACTIVE_PORT))
    global host
    try:
        start_controller("pyactive_thread")
        host = init_host(tcpconf)
        logger.info("Controller PyActive host created")
    except:
        pass

    return host
Exemple #44
0
def test_remote_spawn():
    tcpconf = ('tcp', ('127.0.0.1', 1240))
    host = init_host(tcpconf)
    remote_aref = 'tcp://127.0.0.1:1232/atom/Host/0'
    remote_host = host.lookup(remote_aref)
    remote_host.hello()
    print remote_host
    server = remote_host.spawn('s1', 'Server', [])
    z = server.add(6, 7)
    print z
    server.substract(6, 5)
    t = server.add(8, 7)
    print t
Exemple #45
0
def send():
    host = init_host()
    wd = os.path.dirname(os.path.realpath(__file__))
    streetLights = sum(1 for line in open(wd + '/input.txt'))

    servers = 4
    bds = 5

    # We share the SL between the servers
    if streetLights % bds == 0:
        sl_division = (streetLights / bds)
    else:
        sl_division = (streetLights / bds) + 1

    # create actors
    st = []  # StreetLight array
    serv = []  # Server array
    bd = []  # DataBase array

    #  create log
    log = host.spawn_id('1', 'P2', 'Log', [])

    #  create bds
    for i in range(bds):
        index = sl_division * i
        bd.append(host.spawn_id(str(i), 'P2', 'Bd', [sl_division, index, streetLights]))

    # create streetLights
    for i in range(streetLights):
        st.append(host.spawn_id(str(i), 'P2', 'StreetLight', [i % bds]))

    # create server
    for i in range(servers):
        serv.append(host.spawn_id(str(i), 'P2', 'Server', [st, log, i, bd]))

    # create queue
    queue = host.spawn_id('1', 'P2', 'Queue', [serv, servers])

    # Sensor.start('signal.txt')
    s = host.spawn_id('1', 'P2', 'Sensor', [st, log])

    for i in range(streetLights):
        st[i].set_queue(queue, i)

    s.start(wd + '/input.txt')

    print '=====[SERVER START]====='
Exemple #46
0
def test3():
    host = init_host(('tcp', ('127.0.0.1', 1235)))
    #host = init_host(('127.0.0.1',4322),True)
    #host = Host(host)
    #oref = 'env2:simple:s1:Server'
    aref = 'tcp://127.0.0.1:1234/s1/Server/0'
    ref = host.lookup(aref)

    init = time()
    for i in range(10000):
        z = ref.add(6, 7)
    end = time()

    print end - init

    #sleep(3)
    host.shutdown()
Exemple #47
0
def test3():
    host = init_host(('tcp', ('127.0.0.1', 4346)))
    aref = 'tcp://127.0.0.1:1234/s1/Server/0'
    ref = host.lookup(aref)
    ref.substract(34, 2)
    ref.add(6, 8)
    for i in range(3):
        s = ref.add(56, 4)
        print s, 'ok'
    sleep(1)
    try:
        ref.wait_a_lot()
    except TimeoutError:
        print 'correct timeout'

    sleep(3)
    host.shutdown()
Exemple #48
0
 def setUpClass(cls):
     super(Test, cls).setUpClass()
     start_controller('pyactive_thread')
     cls.host = init_host()
Exemple #49
0
 def setUp(self):
     unittest.TestCase.setUp(self)
     start_controller('pyactive_thread')
     self.host = init_host()
Exemple #50
0
 def setUp(self):
     unittest.TestCase.setUp(self)
     start_controller('tasklet')
     self.host = init_host()
Exemple #51
0
 def setUpClass(cls):
     super(Test, cls).setUpClass()
     tcpconf = ('tcp',('127.0.0.1',6842))
     start_controller('pyactive_thread')
     cls.host = init_host(tcpconf)
Exemple #52
0
"""
Author: Pedro Garcia Lopez <*****@*****.**>
"""
from pyactive.controller import init_host, serve_forever

tcpconf = ('tcp', ('127.0.0.1', 1232))
host = init_host(tcpconf)
serve_forever()