1use axum::{routing::get, Router};
15use axum_server::Server;
16use std::{net::SocketAddr, time::Duration};
17
18#[tokio::main]
19async fn main() {
20 let app = Router::new().route("/", get(|| async { "Hello, world!" }));
21
22 let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
23
24 let mut server = Server::bind(addr).first_request_timeout(Duration::from_secs(10));
25
26 let mut http1 = server.http_builder().http1();
27 http1.header_read_timeout(Duration::from_secs(10));
28
29 let mut http2 = server.http_builder().http2();
30 http2.keep_alive_interval(Duration::from_secs(30));
31 http2.keep_alive_timeout(Duration::from_secs(10));
32
33 println!("listening on {addr}");
34 server.serve(app.into_make_service()).await.unwrap();
35}