#udp #server #tokio #peer #async #send

udp_server

快速UDP服务器框架

31个版本 (5个稳定版本)

1.0.4 2024年1月18日
1.0.3 2023年3月6日
1.0.2 2023年2月27日
0.5.1 2023年2月21日
0.3.6 2020年10月30日

#1897 in 网络编程

每月28次下载
kcpserver中使用

MIT/Apache

15KB
324

udp_server

快速Rust UDP服务器

Latest Version Rust Documentation Rust Report Card Rust CI

示例:echo

use log::LevelFilter;
use udp_server::prelude::{IUdpPeer, UdpServer};

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    env_logger::Builder::new()
        .filter_level(LevelFilter::Debug)
        .init();
    UdpServer::new("0.0.0.0:20001", |peer, mut reader, _| async move {
        while let Some(Ok(data)) = reader.recv().await {
            peer.send(&data).await?;
        }
        Ok(())
    })?
        .set_peer_timeout_sec(20)
        .start(())
        .await?;

    Ok(())
}

依赖

~4–11MB
~87K SLoC