Example #1
0
def main(myname, argv):
    level = logging.WARNING
    # level = logging.INFO
    # level = logging.DEBUG
    logging.basicConfig(level=level, format='%(asctime)-15s %(message)s')
    if len(argv) not in [0, 1]:
        print "Usage: %s [db_path]" % myname
        exit(1)
    db_path = argv[0] if len(argv) > 0 else _DB_PATH
    if USE_KYOTO:
        db_path += '.kch'
    logging.warn("Serving via %s at %s:%s [db:%s:%s][pid:%d]...",
                 "gevent" if USE_GEVENT else "eventlet",
                 _SERVER_ADDR, _SERVER_PORT, 
                 'KyotoCabinet' if USE_KYOTO else 'LevelDB',
                 db_path, os.getpid())
    open_database(db_path)

    if USE_GEVENT:
        server = gevent.server.StreamServer(
                (_SERVER_ADDR, _SERVER_PORT), handle_request)
        server.serve_forever()
    else:
        server = eventlet.listen((_SERVER_ADDR, _SERVER_PORT))
        pool = eventlet.GreenPool()
        while True:
            try:
                new_sock, address = server.accept()
                pool.spawn_n(handle_request, new_sock, address)
            except (SystemExit, KeyboardInterrupt):
                break
Example #2
0
def main(myname, argv):
    level = logging.WARNING
    # level = logging.INFO
    # level = logging.DEBUG
    logging.basicConfig(level=level, format='%(asctime)-15s %(message)s')
    if len(argv) not in [0, 1]:
        print("Usage: %s [db_path]" % myname)
        exit(1)
    db_path = argv[0] if len(argv) > 0 else _DB_PATH
    if USE_KYOTO:
        db_path += '.kch'
    logging.warning("Serving via %s at %s:%s [db:%s:%s][pid:%d]...",
                    "gevent" if USE_GEVENT else "eventlet", _SERVER_ADDR,
                    _SERVER_PORT, 'KyotoCabinet' if USE_KYOTO else 'LevelDB',
                    db_path, os.getpid())
    open_database(db_path)

    if USE_GEVENT:
        server = gevent.server.StreamServer((_SERVER_ADDR, _SERVER_PORT),
                                            handle_request)
        server.serve_forever()
    else:
        server = eventlet.listen((_SERVER_ADDR, _SERVER_PORT))
        pool = eventlet.GreenPool()
        while True:
            try:
                new_sock, address = server.accept()
                pool.spawn_n(handle_request, new_sock, address)
            except (SystemExit, KeyboardInterrupt):
                break
Example #3
0
    server.bind((host, port))

    server.listen(5)

    # server.setblocking(0)

    client_list["Server"] = queue.Queue()

    server_event = gevent.spawn(server_tunnle)

    while True:

        print "Listening ... "

        client_socket, address = server.accept()

        # client_socket.settimeout(5)

        message_queue = queue.Queue()

        client_list[client_socket.fileno()] = message_queue

        client_socket = StreamHandler.Client(client_socket, address, client_list)

        print "Connection from {}".format(address[0])

        recv_event = gevent.spawn(client_socket.Handler_Recv)

        send_event = gevent.spawn(client_socket.Handler_Send)