1.1 概述
smart-servlet 是一个基于 Jakarta Servlet 6.1 规范的轻量级、高性能的 Servlet 容器,专为 Java 17+ 环境设计。
它以低资源占用、高并发处理能力和灵活的扩展性著称,是 Tomcat 和 Undertow 的理想替代方案。
核心优势
- 轻量级设计:内存占用低至 12MB,启动快速,适合资源受限的环境。
- 高性能:支持十万级 QPS,适用于高并发场景。
- 灵活扩展:丰富的 SPI 接口和插件机制,支持自定义协议处理、安全策略扩展等。
- 安全可靠:内置完善的安全机制,支持热部署和高可用性配置。
适用场景
- 信创需求:满足国产化要求,提供自主可控的解决方案。
- 高并发应用:处理大量并发请求,提升服务性能。
- 微服务架构:无缝支持 Spring Boot、Spring Cloud 等现代化架构。
开源仓库:
timeline
title smart-servlet 发展历程
2020 : 11月:立项 遵循Servlet 3.1规范
: 12月:发布首个版本
2021~2022 : 项目持续开发
2023 : 5月:引入 Servlet TCK 测试套件
: 10月:升级规范至 Jakarta Servlet 5.0
2024 : 2月:支持 SSL/TLS 功能
: 3月:1.0 发布
: 7月:2.0发布 升级规范至 Jakarta Servlet 6.0
2025 : 1月:2.8发布 底层平台迁移至 Feat
产品对比
测试场景:
以工程中的 springboot-demo 模块为压测用例,压测工具为 wrk,1024个并发持续15秒。
产品名称 | smart-servlet | Tomcat | Undertow |
---|---|---|---|
初始Heap内存 | 12MB | 15MB | 15MB |
初始Metaspace | 29MB | 30MB | 30MB |
压测 QPS | 42W/s | 10W/s | 40W/s |
压测Heap峰值 | 400MB | 550MB | 750MB |
结论 | 性能高、内存低 | 性能弱、内存中等 | 性能高、内存高 |
开始使用
- 快速上手:
- 获取支持: