WebSphere Application Server V8.5 常见问题及解答

WebSphere Application Server V8.5 的最重要的新特性是新的 Liberty Profile 以及智能管理。本 FAQ 为您汇集了关于 WAS V8.5 的问题集锦,从智能管理、 Liberty Profile、性能等方面帮助您解答您使用过程中可能遇到的问题。

Liberty 和 tWAS是两个产品吗?目前 tWAS和 Liberty 所支持的功能有什么不同?

Liberty 作为 WAS V8.5 发布的一部分,和 tWAS 作为两个单独的介质供用户使用。在功能上 Liberty 是 tWAS 的一个子集。tWAS 是一个完整的 J2EE 服务器,支持 J2EE 规范,而 liberty 目前只支持 Web, OSGi 和 Mobile 应用的开发。

Liberty 是如何提供给用户的?是以插件的形式吗?

Liberty 是以一个单独的运行时环境提供给用户的。用户下载 Liberty 的安装介质后解压缩即可作为运行时环境部署应用。同时 Liberty 可以很好的跟开发工具如 Eclipse、RAD 等结合使用,有很好的开发者体验。

Liberty 有哪些优点?

  1. 简单安装(可以通过 IM 进行安装,或者直接下载免安装版本)
  2. 快速启动
  3. 灵活的配置(只需要在 server.xml 文件里面进行配置即可)
  4. 实时更新(采用 OSGi 架构,server 不需重启,更改即可生效)
  5. 动态加载,Liberty 对所支持的功能特性实施动态加载的机制,即当使用某些特性的时候才将该特性相关的类加载的运行时当中。

Liberty 是否支持文件夹形式的 bundle 应用?

Liberty 目前不支持文件夹形式的 bundle 应用,但是支持将 EBA 格式的 OSGi 应用解压安装,应用名称的格式应为 xxx.eba。

Liberty 采用动态加载的方式,那么当新添加特性时,Liberty 服务器是否会重启?

当添加新的功能特性时,功能特性动态生效,Liberty 服务器不会被自动重启。

在 Liberty 上开发的应用能直接迁移到 tWAS 上进行使用吗?需要做什么修改吗?

用 Liberty 开发的应用可以无缝地迁移到 tWAS 上面,不需要对应用进行修改,只需要在 tWAS 对数据源等应用所需要的资源做相应的设置即可。

Liberty 上部署应用有两种方式,即 Monitored Directory 和 Configuration,两种方式有什么不同?

通过 Monitored Directory 的方式,用户只需把应用放在特定目录下面,Liberty 会自动去检查到该应用,然后自动帮助用户进行安装。

而通过 Configuration 的方式,Liberty 不会自动去进行安装,用户需要手动去进行安装,比如通过命令行或者 Eclipse 开发平台。

相比较与 Tomcat,开发者选择 Liberty 的原因将会是什么? Liberty 会带来哪些新体验 ?

内容
对比项 Tomcat Liberty
Java EE 标准支持 JSP 2.2, Servlet 3.0, JSTL 1.2
用户需要添加相关的 jar 包来实现对其它标准的支持
JSP 2.2, Servlet 3.0, JSF 2.0, JSTL 1.2, JPA 2.0, JDBC 4.0, JAX-RS 1.0, JNDI 1.0, Bean Validation 1.0, SSL 1.0, Security 1.0, Web Security 1.0, JMX 1.0
可动态加载或卸载对应的特性包
OSGi 编程模型支持 是,支持 Blue Print 1.0, WAB 1.0
开发工具 支持 Eclipse 支持 Eclipse, IBM Rational Application Developer
性能 一般 与传统 WAS 具有相同的核心代码,性能好
支持的操作系统 Linux, Windows Linux, Windows, AIX, Mac, HP-UX, Solaris, iSeries, zSeries
配置文件 多个配置文件,更新后需重启服务器 一个配置文件,更新后及时生效,无需重启
可移植性 您可以利用 IBM Application Migration Toolkit 将 Tomcat 上开发的应用快速移植到 WebSphere 应用服务器。反之,则不然。 Liberty 和传统 WAS 对编程模型和标准的支持一致。在 Liberty 上开发的应用可以直接运行在传统 WAS 之上。
社区 http://tomcat.apache.org
有开发人员和用户的邮件列表,没有官方支持,有时回复不够及时。
http://wasdev.net,可以与开发人员直接交流
文档 官方文档涵盖内容有限,但网络上相关内容(包括:blog,技术文章等)广泛。 http://wasdev.net 上提供下载地址、文档、视频、音频、样本引用等。
长期战略优势 一般用于开发环境,生产环产应用的比较少。
支持的并发度不高,可扩展性不强。
Liberty 与传统 WAS 共享同一代码,天生具有其高效稳定的特点。开发 - 测试 - 生产切换零代价。
可扩展性高,支持多个 server 间的负载均衡和故障恢复。

Liberty 高速缓冲可以由 eXtreme Scale 提供吗?

可以,Liberty 可以和 eXtreme Scale 进行集成带来高速缓存的特性。

Liberty 支持 IBM iSeries 吗?

支持,在 IBM iSeries 上的使用和在其他平台上相同。

用户可以在 Eclipse 中管理 Liberty 吗?比如启动和停止?

可以,在 Eclipse 控制台的 Servers 标签中,展开您的 Liberty 下拉列表,会显示出当前部署在该应用服务器上的全部应用,右击某一应用,可以进行相关的启 / 停 / 移除操作,参见截图

WebSphere Application Server V8.5 常见问题及解答_第1张图片

但是在运行时环境里面,暂时不支持启动和停止某一个特定的应用。

Liberty 能在 mobile 的设备上做开发(比如 ipad)吗?

目前不支持这样做,但是 Liberty 支持在 MAC 系统上进行开发。

Liberty 是如何自动添加所需的功能特性的?

在开发环境,即 Eclipse+WDT+Liberty runtime 时,Liberty 可以自动为应用添加所需的特性。此功能是 WDT 来实现的,其会自动扫描应用,判断应用所采用的编程模型,然后为应用添加相应的功能支持。

如果直接使用 Liberty runtime 部署应用,Liberty 是不会自动为应用添加所需的特性的。

Liberty 如何处理不同的应用 /server 的端口冲突?

通过在 Liberty 的运行时环境下面的 bootstrap.properties 和 server.xml 两个文件进行相应的配置,该项配置需要重启 Liberty。参考 信息中心进行配置。

除了 Liberty 之外,还有其他产品是基于 OSGi 架构的?

Liberty 是完全基于 OSGi 的产品,其在构建中完全遵循了 OSGi 的编程模型规范。在应用服务器领域暂时还没有发现其他的产品也完全采用 OSGi 的编程模型进行构建。

当启用某个 Liberty 的特性时,Liberty 是及时动态的加载属于该特性的 JAR 包,还是在 Liberty 启动的时候就已经加载,只是此时才开始使用?

一般来说,根据 bundle 的 Bundle-ActivationPolicy 值来确定是立刻启动 bundle 还是按需启动 bundle(lazy)。但是在 Liberty 中,大多数 bundle 都没有设定这个值,默认的行为就是当 Liberty 启动的时候 bundle 会被立即启动,但是,我们需要说明的是:

  1. liberty 中对于 bundle 的使用采用的 DS 的方式(声明服务),bundle 与 bundle 之间是通过服务的调用来实现的,只有当去主动请求一个服务时,该服务的 bundle 提供者才会被加载,所以,当采用服务的管理模式后,我们并不需要特别在意 bundle 的加载方式。
  2. 在 liberty 中,只有很少的 bundle 设定了 Bundle-ActivationPolicy 值,此刻,这些 bundle 会根据值的设定选择立刻或者按需启动。

你可能感兴趣的:(WebSphere Application Server V8.5 常见问题及解答)