免费下载案例集|20+数字化领先企业人才培养实践经验 了解详情
写点什么

WebLogic Server 10.3 增加了 HTTP Pub/Sub 服务器,可选的启动服务以及快速部署能力

  • 2008-01-28
  • 本文字数:2565 字

    阅读完需:约 8 分钟

BEA 公司 最近发布了 WebLogic Server 10.3 的一个技术预览版 。该技术预览版是 WebLogic Server 10.3 的一个预发布版本,而 10.3 是 10.0 的下一个版本。新版本的服务器将主要专注于在以下三个方面的增强: - 轻量级的 WebLogic 服务器:这包括服务器的下载和安装选项上的改进,通过提供更灵活和模块化的服务器组件来让开发者按需下载和安装。还包括一个“可选的启动服务”特性,以便开发者可以在应用中开启其真正需要的那些服务组件。

  • 可编程的模块和 API 支持:新版本将通过 JAX-RPC JAX-WS web services 来提供对 SOA 应用开发的支持。它还包含了在 WebLogic 集群环境下对基于 Spring 应用的分布式管理能力。
  • 技术集成和标准:该版本还提供了一个新的基于 C#的 JMS 客户端 API 以允许.NET 开发者可以直接同 JMS 子系统交互而不必在.NET 客户端上安装 Java。该版本还支持 SAML 2.0 标准以满足 web 应用和 web services 的单点登录( single sign-on )的需求。

InfoQ 采访了 BEA 的 Blake Connell 来了解即将成为 10.3 版的新特性的一些细节。当被问到“可选的启动服务”特性是否基于 OSGi 或 JMX 技术时,Blake 说这个特性并不是基于这两者的,而是基于内部的 WLS 代码。可选的启动服务(也叫做 WebLogic Server 轻量级运行时环境 )是 WebLogic Server 内部子系统的重构,以使得一些服务可以根据许可或者配置被关闭。这是微服务(microServices)架构(mSA)的一部分,该架构是由 WebLogic Server 开发小组创建的,以此来精细化启动选项。Blake 还说:

在该版本中,开发小组将目光瞄准在 WebLogic Express (WLX)中不存在的那些服务:EJB, JMS 以及 JCA。开发者可以选择以 WLX 模式来启动 WebLogic Server,这样的话那些服务就不会启动了。

在 WebLogic v10.3 更加模块化的问题上,Blake 说模块化已经应用在服务和多个组件的可选安装及启动上了。轻量级安装允许 web 管理员和开发者有选择地下载和安装 WebLogic Server 核心及其全部组件,包括管理控制台,配置向导,JDBC 驱动以及其他开源类库。他也谈及了安装选项:

在该技术预览版中,你会看到各种安装选项会降低安装文件的大小,最小的安装大约需要 150MB 再加上 JDK 的大小。在 GA 版中, 我们将 JDK 作为可选安装,这将进一步降低安装文件的大小,同时我们将恢复网络安装, 这样你只需下载你要安装的那些文件即可。最终结果就是:选择你所需 要的,下载你所选择的,安装你所下载的。

在 WebLogic server 中还有一个叫做“快速交换”( FastSwap ) 的新特性,该特性允许开发者在不丢失服务器上下文的情况下将一个类或类集中改变的代码重新部署。快速交换基于“change-aware classloader”技术,用于在产品环境下升级应用而无需重启 WebLogic Server。当一个类发生改变时,系统会自动加载新的类同时保持应用的运行状态。

借助于快速交换(利用了 java.lang.instrument 和隐藏的特定于 WebLogic 的 java 包),开发者可以增加和删除方法,改变方法签名,增加和删除静态属性并且动态部署那些变化。Blake 总结快速交换技术如下:

这意味着你不需要重新部署你的应用,你也不需要重新创建应用的旧状态以回溯。典型的工作流程就从保存 -> 自动编译 -> 重新部署 -> 返回到保存变为保存 -> 自动编译 -> 刷新浏览器。

WebLogic 10.3 当前不支持将应用(EAR, WAR 和 JARs)部署为 OSGi bundle,但是可以在一个 WebLogic Server 线程中运行 OSGI,然后将其部署。BEA 在其 WebLogic Event Server 中有一个基于 OSGi 的 mSA 产品 。BEA 的 mSA 提供如下服务: - 运行 servlets 的 Jetty HTTP 容器。

  • javax.sql.DataSource 的实现以及访问关系数据库的 thin JDBC 驱动。
  • 日志和调试。
  • 认证和授权安全。

在管理和监控领域,WLS 10.3 的一个新特性是对 Spring 应用的分布式管理 。对该新特性的技术细节的提问,Blake 回答如下:

在 WLS 10.0 中,我们提供了 WLS 控制台以支持对 Spring Beans 和应用的管理。然而,这个支持需要将 Spring Beans 暴露为 MBeans,并且他们要与控制台部署在同一台服务器上才行。WLS 控制台不支持分布式管理,即如下场景:控制台运行在一台服务器上,而 Spring Beans 运行在几个单独的受管理的服务器上。

在 WLS 10.3 中,我们支持分布式管理场景了,这是通过更好地平衡 WLS 对于 Spring Beans 管理的结构来实现的。在该版本中,Spring Beans 的部署会自动创建用来进行分布式管理的标准的 WLS MBeans。现在 WLS 控制台可以运行在一台服务器上,并且对运行在不同的受管理的服务器上的 Spring Beans 进行管理。管理员现在可以查看部署在受管理的服务器上的 Spring Beans 的列表,还可以查看那些 Spring Beans 的配置信息。我们还提供了对 Spring Beans 和应用所使用的事务服务的分布式管理。

在被问到 WebLogic 是否计划未来提供对 Comet API Tomcat 6.0 当前已经提供了对其的支持)的支持时,Blake 说道:

我们正在为下个版本评估 Comet API,在 WLS 10.3 中,我们提供一个 HTTP Pub/Sub 服务器,它是一个基于发布/ 订阅 机制的管道以支持web 客户端通过HTTP 发送和接受异步消息。该Pub/Sub 服务器基于Comet 项目提出的 Bayeux 协议。在客户端它与 Dojo 协同工作。通过该 HTTP pub/sub 服务器,多个客户端可以连接到一个服务器端,通过管道订阅以及发布或者监听管道上的消息。客户端通过同步协作 能与登录到其他服务器上的客户端共享数据,使得多个用户可以分工协作。当前的实现平衡了服务器端(例如:分布式目的地,JMS 集群,变址订阅等)的 WLS JMS 消息 架构以此来获得可靠的传输。

WebLogic Server 10.3 支持 Java SE 6 规范。在未来的发布版中,它还将以附加组件的形式支持服务组件架构( Service Component Architecture )的开发。我们可以通过技术预览版的网址 来了解更多的细节。随着最近 Oracle 收购 BEA 消息的发布,我们倒想看看 WebLogic Server 未来的发展路线图是什么样子的。

查看英文原文: WebLogic Server 10.3 Adds HTTP Pub/Sub Server, Optional Services Startup and FastSwap Deployment


译者简介:张龙,同济大学软件工程硕士,现就职于理光软件研究所。主要从事文档工作流和办公自动化解决方案的研发工作。热衷于 Java 轻量级框架的研究,对敏捷方法很感兴趣。曾有若干年的 J2EE 培训讲师经历。参与 InfoQ 中文站内容建设,请邮件至 china-editorial@infoq.com

2008-01-28 00:412455
用户头像

发布了 88 篇内容, 共 262.1 次阅读, 收获喜欢 8 次。

关注

评论

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

【Redis技术专题】分析一下Redission实现分布式锁的点点滴滴

洛神灬殇

redis redission redisson 分布式锁 11月日更

拍乐云基于AV1的实时视频系统技术实践 | 2021 LiveVideoStackCon 演讲回顾

拍乐云Pano

音视频 WebRTC RTC

不懂乐理和五线谱也能快速入门电子音乐制作!用FL Studio 搞音乐创作有时候就是这么简单!

懒得勤快

云小课|三大灵魂拷问GaussDB(DWS)数据落盘安全问题

华为云开发者联盟

安全 云小课 GaussDB(DWS) 数据仓库服务 数据落盘安全

架构实战营 - 毕业总结

燕燕 yen yen

架构训练营

Android技术分享| Android WebRTC 开启H264软件编解码教程

anyRTC开发者

android 音视频 WebRTC ffmpeg H264

毕业总结

面向对象的猫

毕业总结

当你在跑步时在想什麽? 这个是村上春树的,当你在骑摩托车时在想什麽? 这个是波西格的

叶小鍵

MRS HetuEgine的数据虚拟化实践

华为云开发者联盟

大数据 数据湖 云原生 华为云 数据虚拟化

网易智企斩获“2021全球新经济卓越成就奖”两项大奖

网易云信

大数据 云通信 通信云

实现连续测试,要做的事情【译】

FunTester

敏捷 自动化 持续集成 FunTester 连续测试

30K成功入职京东:拿到京东offer经验分享「面试经历+面试真题」

Java redis spring 程序员 JVM

我凭借这份pdf,最终拿到了阿里,腾讯,京东等八家大厂offer

Java 编程 程序员 面试

如何在 Spring 中使用事件

码语者

Spring Boot Event 事件

pygame 中的图形绘制函数、帧速率和文字相关知识,简单的的不得了

梦想橡皮擦

11月日更

lims实验室信息监控管理系统解决方案

低代码小观

企业管理 管理系统 LIMS实验室信息管理系统 LIMS系统 信息管理系统

WeTest六周年 | 匠心不改 初心不变

WeTest

CANN5.0黑科技解密 | 别眨眼!缩小隧道,让你的AI模型“身轻如燕”!

华为云开发者联盟

AI CANN 昇腾 模型压缩 模型缩小隧道

LCN基本原理

平凡人生

增量编译:让小程序包编译速度提升11倍!

Speedoooo

容器 ios开发 APP开发 Andriod开发

惊艳11月!日更挑战你准备好了么!?

InfoQ写作社区官方

11月日更 热门活动

公司刚来的阿里p8,看完我构建的springboot框架,甩给我一份文档

Java 编程 程序员 Spring Boot

APP与小程序,相爱相杀

Speedoooo

容器 ios开发 APP开发 Andriod开发

拥有3000多万用户的录屏软件,到底强在哪儿?

淋雨

Camtasia

OCR的工作原理和应用场景

澳鹏Appen

人工智能 机器学习 OCR 训练数据 文本识别

极客 - 大数据 - 作业 Flink

西伯利亚鼯鼠

闻香识代码,什么是衡量代码质量的终极标准?

Zilliz

Java 代码质量 JavaScrip

APP上跑小程序,一箭双雕

Speedoooo

ios开发 APP开发 Andriod开发

Linux 系统资源查看及硬件故障排查(qbit)

qbit

操作系统 故障 资源

03 K8S之网络互联通信

穿过生命散发芬芳

k8s 11月日更

漏洞深入分析-2021

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

WebLogic Server 10.3增加了HTTP Pub/Sub服务器,可选的启动服务以及快速部署能力_Java_Srini Penchikala_InfoQ精选文章