Repository navigation
[Feature][Linkis] Replace Tomcat & Jetty with BES (BaoLanDe) middleware solution #5305
Description
Linkis Component
linkis-dist
What happened
English:
Linkis currently uses Tomcat and Jetty as servlet containers. For domestic localization requirements, there is a need to support BES (BaoLanDe/宝兰德) middleware as an alternative container solution.
Background:
BES (BaoLanDe) is a domestic middleware solution commonly required in Chinese government and enterprise environments for localization (信创) compliance. Supporting BES would enable Linkis deployment in these environments.
中文:
Linkis当前使用Tomcat和Jetty作为servlet容器。为满足国产化需求,需要支持宝兰德(BES)中间件作为替代容器解决方案。
背景:
宝兰德(BES)是中国政府和企业环境中国产化(信创)合规常见要求的国产中间件解决方案。支持宝兰德将使Linkis能够在这些环境中部署。
What you expected to happen
English:
Linkis should support BES middleware as a servlet container option:
- Provide BES-compatible deployment packages
- Ensure all Linkis services can run on BES container
- Maintain compatibility with existing Tomcat/Jetty deployments
- Provide migration guide from Tomcat/Jetty to BES
中文:
Linkis应该支持宝兰德中间件作为servlet容器选项:
- 提供与宝兰德兼容的部署包
- 确保所有Linkis服务都能在宝兰德容器上运行
- 保持与现有Tomcat/Jetty部署的兼容性
- 提供从Tomcat/Jetty迁移到宝兰德的指南
How to reproduce
English:
Current situation:
- Linkis services are packaged for Tomcat/Jetty deployment
- BES middleware deployment is not officially supported
- Manual adaptation is required for BES deployment
中文:
当前情况:
- Linkis服务打包用于Tomcat/Jetty部署
- 不正式支持宝兰德中间件部署
- 需要手动适配才能部署到宝兰德
Anything else
English:
Implementation Approach:
- Container Abstraction: Abstract servlet container dependencies to support multiple implementations
- BES Compatibility Testing: Test Linkis services on BES Application Server
- Build System Updates: Add BES-specific build profiles in Maven/Gradle
- Dependency Management: Handle BES-specific dependencies and APIs
- Documentation: Create BES deployment guide
Technical Considerations:
- Servlet API compatibility (ensure using standard Servlet 3.0+/4.0 APIs)
- WebSocket support verification on BES
- Spring Boot embedded container vs external container deployment
- ClassLoader isolation issues
- BES-specific configuration requirements
BES Middleware Information:
- Official Website: http://www.bessystem.com/
- Supports JEE standards (Servlet, JSP, EJB, etc.)
- Compatible with mainstream application servers
Migration Steps:
- Review current Tomcat/Jetty specific code
- Replace with standard Servlet APIs
- Test on BES Application Server
- Create BES deployment WAR/EAR packages
- Update deployment documentation
中文:
实现方法:
- 容器抽象:抽象servlet容器依赖以支持多种实现
- 宝兰德兼容性测试:在宝兰德应用服务器上测试Linkis服务
- 构建系统更新:在Maven/Gradle中添加宝兰德特定的构建配置文件
- 依赖管理:处理宝兰德特定的依赖和API
- 文档:创建宝兰德部署指南
技术考虑:
- Servlet API兼容性(确保使用标准Servlet 3.0+/4.0 API)
- 在宝兰德上验证WebSocket支持
- Spring Boot嵌入式容器vs外部容器部署
- ClassLoader隔离问题
- 宝兰德特定的配置要求
宝兰德中间件信息:
- 官方网站:http://www.bessystem.com/
- 支持JEE标准(Servlet、JSP、EJB等)
- 兼容主流应用服务器
迁移步骤:
- 审查当前Tomcat/Jetty特定代码
- 替换为标准Servlet API
- 在宝兰德应用服务器上测试
- 创建宝兰德部署WAR/EAR包
- 更新部署文档
Are you willing to submit a PR?
- Yes I am willing to submit a PR!
Activity
github-actions commentedon Dec 4, 2025
😊 Welcome to the Apache Linkis community!!
We are glad that you are contributing by opening this issue.
Please make sure to include all the relevant context.
We will be here shortly.
If you are interested in contributing to our website project, please let us know!
You can check out our contributing guide on
👉 How to Participate in Project Contribution.
Community
Mailing Lists
[-][Feature][Linkis]tomcat&jetty替换宝兰德方案[/-][+][Feature][Linkis] Replace Tomcat & Jetty with BES (BaoLanDe) middleware solution[/+]