跳转到内容

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-servletTomcatUndertow
初始Heap内存12MB15MB15MB
初始Metaspace29MB30MB30MB
压测 QPS42W/s10W/s40W/s
压测Heap峰值400MB550MB750MB
结论性能高、内存低性能弱、内存中等性能高、内存高

开始使用

  1. 快速上手
  1. 获取支持