Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Hiver Framework

A production-grade, high-availability web framework written in Rust.

Hiver 框架

用 Rust 编写的生产级、高可用 Web 框架。


Rust License Crates Phase

Why Hiver? / 为什么选择 Hiver?

🚀 Custom io-uring Runtime

Custom async runtime built from scratch with io-uring (Linux), epoll, and kqueue (macOS). Thread-per-core architecture for linear scalability.

自定义 io-uring 运行时

从零构建的自定义异步运行时,支持 io-uring、epoll 和 kqueue。Thread-per-core 架构实现线性扩展。

🏗️ Spring-like Annotations

40+ procedural macro annotations inspired by Spring Boot: @GetMapping, @Autowired, @Repository — but in Rust.

类 Spring 注解

40+ 过程宏注解,灵感来自 Spring Boot:#[get]#[inject]#[derive(Repository)] — 但在 Rust 中。

🛡️ Resilience Built-in

Circuit breakers, rate limiters, retry logic, and service discovery — production patterns out of the box.

内置弹性模式

熔断器、限流器、重试逻辑和服务发现 — 开箱即用的生产级模式。

🌐 Web3 Native

First-class Ethereum support via Alloy: wallet management, smart contracts, RPC client, and chain abstraction.

Web3 原生支持

通过 Alloy 提供一流的以太坊支持:钱包管理、智能合约、RPC 客户端和链抽象。

📊 Full Observability

Distributed tracing (OpenTelemetry), metrics (Prometheus), and structured logging — zero-config integration.

完整可观测性

分布式追踪(OpenTelemetry)、指标(Prometheus)和结构化日志 — 零配置集成。

🗄️ Data Layer (In Progress)

Spring Data-like abstractions: Repository traits, ORM, ActiveRecord, QueryBuilder, and multi-database support.

数据层(开发中)

类 Spring Data 抽象:Repository trait、ORM、ActiveRecord、QueryBuilder 和多数据库支持。


Quick Start / 快速开始

# Cargo.toml
[dependencies]
hiver-starter = "0.1"
use hiver_starter::HiverApp;
use hiver_router::Router;

#[hiver::handler]
async fn hello() -> &'static str {
    "Hello, Hiver! / 你好,Hiver!"
}

fn main() -> std::io::Result<()> {
    HiverApp::new()
        .with_router(Router::new()
            .get("/", hello)
            .get("/users/:id", get_user)
            .post("/users", create_user)
        )
        .run()
}

📖 Read the full guide →


Performance / 性能

MetricTargetStatus
Simple GET QPS1M+✅ Achieved
P99 Latency (no middleware)< 1ms✅ Achieved
Base Memory< 10MB✅ Achieved
Startup Time< 100ms✅ Achieved

Architecture / 架构

┌─────────────────────────────────────────────┐
│              Application Layer               │
├──────────┬──────────┬──────────┬────────────┤
│   HTTP   │ Resilience│Observab. │   Web3     │
│  Router  │   & HA   │ Tracing  │  Ethereum  │
├──────────┴──────────┴──────────┴────────────┤
│           Core Framework (62 crates)         │
├──────────┬──────────┬──────────┬────────────┤
│ Handlers │Extractors│Middleware│   Data     │
├──────────┴──────────┴──────────┴────────────┤
│          Custom Async Runtime                │
├──────────┬──────────┬──────────┬────────────┤
│ io-uring │ Thread-  │  Timer   │   MPSC     │
│  Driver  │per-core  │  Wheel   │ Channels   │
└──────────┴──────────┴──────────┴────────────┘

10 domains, 62 crates — full Spring Boot feature parity in Rust.


Project Status / 项目状态

PhaseDescriptionStatus
0Foundation (CI/CD, docs)✅ Complete
1Runtime Core (io-uring, scheduler)✅ Complete
2HTTP Core (server, router, extractors)✅ Complete
3Middleware & Extensions✅ Complete
4Resilience (circuit breaker, retry)✅ Complete
5Observability (tracing, metrics)✅ Complete
6Web3 Support (Ethereum, wallets)✅ Complete
7Production Ready (optimization, security)✅ Complete
8Data Layer (ORM, migrations)🔄 In Progress

Resources / 资源

ResourceLink
📦 Crates.iohiver-framework
📖 API Docsdocs.rs/hiver
💻 GitHubViewWay/hiver
📄 Design Specdesign-spec.md
🗺️ Implementation Planimplementation-plan.md

Spring Boot Equivalents / Spring Boot 对比

Spring BootHiverDescription
@RestController#[handler]HTTP handler
@GetMapping#[get("/path")]GET endpoint
@Autowired#[inject]DI injection
@Repository#[derive(Repository)]Data repository
@ConfigurationProperties#[derive(PropertiesConfig)]Config binding
SpringApplication.run()HiverApp::new().run()App bootstrap
@SpringBootApplicationhiver-starterAuto-config
Resilience4jhiver-resilienceCircuit breaker
Spring Securityhiver-securityAuth & security
Spring Data JPAhiver-data-ormORM abstraction
Spring WebFluxhiver-httpHTTP server

Get Started → Installation