smart-http v1.1.11发布,QPS 高达 703W 的 Http 服务器
smart-http 是一款基于 smart-socket 通信框架,支持 HTTP/1.0、HTTP/1.1 以及 Websocket 协议的可编程式 HTTP 微内核。
此版本主要变化
- 新增 ByteTree 数据结构,提升解码和路由性能。
- 新增 TimerUtils 用于维护系统时钟。
- 优化 Http 响应逻辑,减少空header的判断。
- 优化 chunked 响应的判定逻辑。
- 升级 smart-socket 至 1.5.15。
- 移除 「HEAD 请求禁止 body 响应」的约束。
- 移除 HttpRouteHandler 中的缓存映射。
- 移除 MessageProcessor 的代理设计。
- Http Body 解码器绑定至 RequestAttachment。
- 支持集成 smart-socket 插件。
- 支持 MaxFormContentSize 配置化。
- 解码过程指定默认字符集:StandardCharsets.US_ASCII。
- 补充 https 的应用 demo。
Maven 坐标
<dependency>
<groupId>org.smartboot.http</groupId>
<artifactId>smart-http-server</artifactId>
<version>1.1.11</version>
</dependency>
示例代码
public class SimpleSmartHttp {
public static void main(String[] args) {
HttpBootstrap bootstrap = new HttpBootstrap();
bootstrap.httpHandler(new HttpServerHandler() {
@Override
public void handle(HttpRequest request, HttpResponse response) throws IOException {
response.write("hello smart-http<br/>".getBytes());
}
}).setPort(8080).start();
}
}
性能评测
历经三个多月的优化,该版本性能提升幅度约10%~15%,并于近期的 TFB 评测中以 703W 的QPS位居榜单第一位。
