写点什么

Siwpas 1.0——针对 EE6 Web Profile 基于 Tomcat 的服务器

  • 2011-05-29
  • 本文字数:1928 字

    阅读完需:约 6 分钟

最近 MechSoft 公司发布了 Siwpas,它是基于 Apache Tomcat 的轻量级应用程序服务器,特别专注于 Web 应用程序。

Siwpas 是基于 Apache Tomcat 7 的 Java 应用程序服务器,其中整合了:

  • Apache OpenJPA 提供的对 JPA 的支持
  • Apache OpenEJB 提供的对 EJB 的支持
  • Apache OpenWebBeans 提供的对 CDI 的支持
  • 通过 Apache MyFaces 提供的对 JSF 的支持
  • proprietary 服务层,这使得我们可以通过各种库来注入易于使用的组件,从而使用 Java EE 6 Web Profile。
  • proprietary 监控控制台(只在企业版中提供)

我们有幸联系到 MechSoft 公司的首席技术官 Gurkan Erdogdu,从而了解到更多关于 Siwpas 的信息。

InfoQ: Siwpas 到底是什么呢?

Siwpas 代表的是“简单的 Web Profile 应用程序服务器”。它是一种旨在实现 Java EE Web Profile 规范的轻量级 Java 应用程序服务器。它基于多种 Apache 项目。其中的一些直接集成在 Siwpas 中(像 OpenJPA 和 MyFaces),另一些则经过了 MechSoft 的扩展(像 OpenWebBeans 和 OpenEJB)。

InfoQ: Siwpas 的目标受众是谁? 是现有的 Tomcat 用户? 还是使用全功能应用程序服务器的开发者?

Siwpas 和 Tomcat 更相近,而与重量级的应用程序服务器——像 WebLogic、WebSphere、JBoss 等——相差比较远。它只包含针对 Java EE 6 Web Profile 的特性。例如,它没有整合 CORBA、JMS 等等。使用 Siwpas 你可以很轻松地在几分钟之内实现 Java EE Web Profile 应用程序。此外,和全功能应用程序服务器相比,Siwpas 的速度非常快。在一般的使用环境中,它在 2-3 秒之内就能够启动。对于开发团队来说,重新部署的时间意义重大。而 Siwpas 大大减少了“部署 / 测试”周期所需要的时间。

InfoQ: 那么 Siwpas 只是 Tomcat + EJB + JPA +JSF 的集合,或者还有更多? 我们可以通过整合相同的 Apache 项目获得相同的功能吗?

不能,MechSoft 对很多库进行了扩展,从而适应 Java EE Web Profile 的需要。如果开发者使用基本的 Tomcat 并添加了 EJB、JPA 和 JSF,那么他们无法确保 EJB 能够被注入到 JSF beans 中,也无法确保 CDI beans 能够注入到 Servlets、Filters、EJBs 和 CDI beans 中,更无法确保所有 Java EE 的资源依赖都能够得到完美地处理。根据规范,所有 Java EE Web Profile 组件都必须协同工作。例如,当你的 web 应用程序包含 EJB 的时候,web 应用程序的 JNDI 上下文就必须共享 EJB 的 JNDI 上下文。 如果不编写整合(内核)层,你就无法实现这种类型的互操作性。MechSoft 以统一的方式实现了包含这些组件的内核。

此外,Siwpas 企业版还包含了带有状态的 EJB 的集群和灾难恢复,以及带有 Tomcat 本地集群的 CDI beans。这些特性并没有包含在标准的 EJB 或者 CDI 实现中。MechSoft 对 OpenEJB 和 OpenWebBeans 实现进行了扩展,然后才实现了这些特性。将来的版本还会包含对 WebSocket 协议和 Comet 协议的实现。

InfoQ: 你想要完全符合 Web Profile 吗? Web Profile 对于开发者来说很重要吗? 对你来说,符合规范很重要吗?

是的,现在我们正试图寻找一种方式,让我们可以合理获得 Java EE Web Profile TCK。为了使用 Java EE Web Profile TCK 对 Siwpas 进行完整测试,MechSoft 需要从 Oracle 获得许可。 如果我们获得的话,那么我们就想要让 Siwpas 通过 Java EE Web Profile 的认证。对于开发者来说,Profile 的兼容性很重要,但那并不是所有,因为真正的应用程序更需要 TCK 的兼容性。 然而对我们来说,拥有 Java EE Web Profile 认证非常重要。

InfoQ: 你觉得应该如何与 Spring tc Server 竞争呢? 他们也提供了基于 Tomcat 的轻量级应用程序服务器,并且其中带有一些其他的扩展。

Spring tcServer 基于 Tomcat + Spring 框架。而 Siwpas 则基于 Tomcat + Java EE 技术。与之前的版本相比,Java EE 6 更容易使用。如果你查看 EJB 3.1 Lite 规范,就会发现使用事务和安全保护实现 EJB 非常容易。当引入 Spring 的时候,其中并没有 Web Profile 和兼容服务器需要实现完整的 J2EE 规范(使得它变成重量级的服务器)。此时,开发带有 J2EE 技术的 web 应用程序会耗费很长时间。而现在不再是那样,因为 Java EE 6 Web Profile 只包含定义良好的组件,而不是企业应用程序可能会使用的所有组件。所以,和 Spring tc Server 相比,最基本的区别就在于 Siwpas 是基于 Java EE 标准而不是自定义框架的。

Siwpas 有两个版本: 社区版和企业版。社区版是开源的,没有任何官方的支持。而企业版是基于社区版的,还包含了其他特性,另外还有 proprietary web 控制台,让你可以轻松地管理服务器。MechSoft 公司还提供了演示视频

此外,他们还为在IDE 中部署应用程序发布了 Eclipse 插件

查看英文原文: Siwpas 1.0 - a Tomcat Based Server for EE6 Web Profile

2011-05-29 05:252243
用户头像

发布了 340 篇内容, 共 132.7 次阅读, 收获喜欢 13 次。

关注

评论

发布
暂无评论
发现更多内容

2021年10月云主机性能评测报告

博睿数据

杂谈——程序人生我的大学

思想者杰克

不敢想,做个博客竟如此简单!

程序员鱼皮

博客

央行数字货币即将破茧,一场大变局,震撼全球!

CECBC

赋能优秀传统文化,区块链助力讲好中国故事

CECBC

杂谈—程序人生第一份工作

思想者杰克

程序人生 新手指南 程序

面试必备!阿里内部Java面试八股文出炉,教科书式完美回答

Sakura

Java 程序员 架构 面试

大牛呕心力作——Kafka开发实战,助你徜徉大数据时代

redis 程序员 java编程

SAP CRM和C4C的内容管理(Content Management)

汪子熙

内容 CRM C4C 11月日更

电商秒杀系统

伏波

架构

十年数据库专家,呕心力作MySQL技术精粹,薪资直涨3K其实很轻松

数据库 程序员 MySQL 数据库

架构课毕业总结

伏波

架构

如何在实际场景中使用异常检测?阿里云Prometheus智能检测算子来了

阿里巴巴云原生

阿里云 云原生 Prometheus 异常检测

【死磕Java并发】-----深入分析synchronized的实现原理

chenssy

死磕 Java 死磕 Java 并发

端开发技术——5个高效的Flutter开发工具

思想者杰克

Bash 脚本简介

码语者

bash Shell

北鲲云超算平台如何成为就生命科学云计算领域先行者?

北鲲云

模块七作业

Geek_fc100d

「架构实战营」

区块链+农业开启智能化生产时代 解决世界性食品及粮食安全问题

CECBC

Eureka 源码之客户端注册

悟空聊架构

Eureka 源码剖析 注册中心 悟空聊架构

软件架构治理 之 架构混沌之谜

码猿外

架构 软件架构治理

云知声 Atlas 超算平台: 基于 Fluid + Alluxio 的计算加速实践

阿里巴巴云原生

阿里云 云原生 实践 Fluid Alluxio

CRM WebClient UI的浏览器打印实现

汪子熙

JavaScript CRM SAP UI5 JavaScript图表库 11月日更

区块链的抽象与演进

CECBC

布局人工智能,银行有的不只是智能客服

CECBC

20道阿里面试必问JVM面试专题(文末附送答案及JVM学习文档)

编程 程序员 JVM

RadonDB ClickHouse on K8s 2.1.0 发布!

RadonDB

数据库 Kubernetes Clickhouse RadonDB

前后端、多语言、跨云部署,全链路追踪到底有多难?

阿里巴巴中间件

阿里云 云原生 中间件 全链路追踪

新消费:如何度过从0到1的破局期?

石云升

学习笔记 11月日更 新消费

阿里大牛教你如何用Dubbox+SpringBoot+Docker架构,实现双11项目

编程 程序员 springboot

pygame 小游戏前的准备工作要做足

梦想橡皮擦

11月日更

Siwpas 1.0——针对EE6 Web Profile基于Tomcat的服务器_Java_Kostis Kapelonis_InfoQ精选文章