Exemplo n.º 1
0
async def launch_server():
    # cant just call main_server.run
    # main_server.run("noobit.server.main_app:app", host="localhost", port=8000, reload=False)
    app = "noobit.server.main_app:app"
    config = Config(app, host="localhost", port=8000, reload=False)
    config.backlog = 2048

    global server
    server = Server(config=config)
    server.aioredis_pool = await aioredis.create_redis_pool(
        ('localhost', 6379))

    await server.serve()
Exemplo n.º 2
0
def run(app, **kwargs):

    config = Config(app, **kwargs)
    config.backlog = 2048  #! for some reason we need to specify this
    server = Server(config=config)

    if (config.reload or config.workers > 1) and not isinstance(app, str):
        logger = logging.getLogger("uvicorn.error")
        logger.warn(
            "You must pass the application as an import string to enable 'reload' or 'workers'."
        )
        sys.exit(1)

    if config.should_reload:
        sock = config.bind_socket()
        supervisor = StatReload(config, target=server.run, sockets=[sock])
        supervisor.run()
    elif config.workers > 1:
        sock = config.bind_socket()
        supervisor = Multiprocess(config, target=server.run, sockets=[sock])
        supervisor.run()
    else:
        server.run()