3 个版本
0.1.0 |
|
---|---|
0.0.9 | 2023 年 9 月 11 日 |
#683 在 HTTP 服务器
每月 48 次下载
12KB
188 行
Integra Web 框架
Integra 是一个简洁、高效的 Rust Web 框架,利用 hyper
库的强大功能。将成为第一个具有 MVC 结构的高性能后端框架!
🌟 特性
- 快速:基于 Rust 最快的 Web 库之一
hyper
构建。 - 显式路由:使用清晰直观的路由器定义路由,让你想起 Laravel。
- 安全优先:从 Rust 的强大安全保证中受益。
- MVC:Integra 在 Rust 中引领 MVC(模型-视图-控制器)的发展。模型支持通过 Diesel ORM 集成正在开发中。
- 极简设计:没有冗余,只有必需品。
🔥🔥🔥 性能基准 🔥🔥🔥
以下基准测试是在 M1 Pro 机器上使用单个 CPU 核心进行的。测试使用 wrk
基准测试工具在基本项目设置上执行。这些结果在使用 salvo 的 hello world 时非常接近。
wrk http://127.0.0.1:3029/hello -t12 -c400 -d30s
Running 30s test @ http://127.0.0.1:3029/hello
12 threads and 400 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 3.80ms 593.67us 8.34ms 74.98%
Req/Sec 8.71k 0.88k 11.93k 59.64%
3122975 requests in 30.04s, 869.66MB read
Socket errors: connect 0, read 232, write 0, timeout 0
Requests/sec: 103977.74
Transfer/sec: 28.95MB
请注意,性能可能因许多因素而异,包括特定的工作负载、服务器的配置以及客户端的网络条件。
🖥️ 测试环境
- 操作系统:Mac OS Ventura 13.5.1
- 处理器:M2 Pro
- 型号:MacBook Pro M2 Pro (16" 和 16GB)
🚀 使用 Integra 快速入门
- 克隆此仓库
git clone https://github.com/SapphoTech/integra-starter-template.git my_project_name
📘 使用方法
待办事项
🎯 路线图
-
模块
- 使用模块定义应用程序的结构
- 模块封装
- 共享模块
-
控制器
- 路由参数
- 请求、响应对象处理
-
支持的请求
- GET
- POST
- PUT
- DELETE
- HEAD
- CONNECT
- OPTIONS
- TRACE
- PATCH
-
中间件
- 用于请求/响应操作的中间件
- 执行顺序
-
守卫
- 路由守卫用于身份验证和授权
-
拦截器
- 转换响应
- 处理请求/响应生命周期
-
宏属性
- 用于从请求中提取自定义数据的自定义宏属性
-
模型
- 与 Diesel ORM 集成
- 支持迁移
- CRUD 操作
- 高级查询和过滤
-
仓库
- 通用仓库模式
- 用户仓库
-
提供者和服务
- 自定义提供者
- 单例服务
-
视图
- 模板引擎集成
- 支持动态内容渲染
- 布局和部分
🤝 贡献
待办事项
依赖
~11–23MB
~313K SLoC