Unverified Commit 47f5e03b authored by Kevin Lin's avatar Kevin Lin Committed by GitHub
Browse files

[Bugfix] Bind api server port before starting engine (#8491)

parent 2759a43a
...@@ -5,6 +5,7 @@ import multiprocessing ...@@ -5,6 +5,7 @@ import multiprocessing
import os import os
import re import re
import signal import signal
import socket
import tempfile import tempfile
from argparse import Namespace from argparse import Namespace
from contextlib import asynccontextmanager from contextlib import asynccontextmanager
...@@ -525,6 +526,9 @@ async def run_server(args, **uvicorn_kwargs) -> None: ...@@ -525,6 +526,9 @@ async def run_server(args, **uvicorn_kwargs) -> None:
logger.info("vLLM API server version %s", VLLM_VERSION) logger.info("vLLM API server version %s", VLLM_VERSION)
logger.info("args: %s", args) logger.info("args: %s", args)
temp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
temp_socket.bind(("", args.port))
def signal_handler(*_) -> None: def signal_handler(*_) -> None:
# Interrupt server on sigterm while initializing # Interrupt server on sigterm while initializing
raise KeyboardInterrupt("terminated") raise KeyboardInterrupt("terminated")
...@@ -541,6 +545,8 @@ async def run_server(args, **uvicorn_kwargs) -> None: ...@@ -541,6 +545,8 @@ async def run_server(args, **uvicorn_kwargs) -> None:
model_config = await async_engine_client.get_model_config() model_config = await async_engine_client.get_model_config()
init_app_state(async_engine_client, model_config, app.state, args) init_app_state(async_engine_client, model_config, app.state, args)
temp_socket.close()
shutdown_task = await serve_http( shutdown_task = await serve_http(
app, app,
limit_concurrency=async_engine_client.limit_concurrency, limit_concurrency=async_engine_client.limit_concurrency,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment