NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Struts 2 试验热部署插件

  • 2007-08-14
  • 本文字数:798 字

    阅读完需:约 3 分钟

Apache Struts 这个已被广泛应用的 Java Web 应用框架纳入了一个很有价值的新特性,该特性对热部署插件提供了支持。Struts 的开发成员 Don Brown 在上星期宣布,他们已经开始动手开发Struts 2 的OSGi 插件,当这项工作完成以后,就可以实时的添加、移除或是升级插件,而无需重启整个应用。

Brown 还提到了他曾经被Atlassian 的JIRA 和Confluence(Brown 之前曾在Atlassian 公司中效力)中所使用的插件系统而深深触动。他想把类似这两个产品中支持热部署插件的特性带到Struts 里面来,这将会为Struts 将来的发展带来很大的便利。随后 OSGi 插件的开发就开始了。

该插件可以让我们能够动态的维护应用,从而削除对用户的干扰,但是最直接的效果还是在开发应用的时候体现出来的。Don 说道:

这项能力实是强大无比,我们现在已经开始在内部把越来越多的功能挪到了插件中去,这样我们的代码库就可以只关注核心功能,更加敏捷。

使用这个 OSGi 插件以后,开发人员就可以把应用拆分成多个独立的 jar 包,或称作“bundles”,只要把它们放到服务器上恰当的位置上,该插件就可以把它们一一找出并进行部署。运行这个插件并不需要花多少工夫,而且 Brown 的目标之一就是要通过把大量的 OSGi 复杂性隐藏起来,从而使得 bundle 开发变得更加简单(当然,他也做好了应对业界激烈尖锐的反对意见的准备,因为他做出的结论就是“OSGi 专家将要掩面哭泣了”)。

目前 OSGi 插件的开发还处于早期阶段,也没有经过足够的测试以应用于产品环境。目前这个版本还有很多限制,比如没有 GUI 管理工具;只支持 Velocity 模板;bundle 内包含的文件也有限制(不能有第三方 jar 包)等等。它的源代码可以从 Apache Struts 2 的沙箱中获取到,按照 Apache 一贯的风格,它也欢迎社区参与到开发过程中来。不过目前还没有迹象表示在 Struts 2 中的这种插件革新会移植回 Struts 1 中。

查看英文原文: Struts 2 Experiments with Hot Deployable Plugins

2007-08-14 05:304249
用户头像

发布了 197 篇内容, 共 52.5 次阅读, 收获喜欢 20 次。

关注

评论

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

🚄【Redis 干货领域】帮你完全搞定Cluster原理(架构篇)

洛神灬殇

redis redis集群 5月日更 redis架构

Python数据科学基础-Pandas介绍

五分钟学大数据

数据科学 5月日更

模块四:课后作业

菲尼克斯

架构实战营

【音视频】基于声网实时音视频能力的音视频质量体系建设

轻口味

音视频 WebRTC 声网 质量指标

WebContainers介绍:如何在浏览器运行原生的Nodejs

代码先生

大前端 webassembly 技术创新 WebContainers StackBlitz.com

拿金钱考验人性|靠谱点评

无量靠谱

☕【JVM技术之旅】彻底弄清楚Minor GC和Major GC及Full GC

洛神灬殇

JVM 垃圾回收 GC 5月日更

InnoDB 锁类型及其分析

luojiahu

innodb 死锁 间隙锁 意向锁

架构实战营 模块四作业

netspecial

架构实战营

加油!未来的每一天

Sherry

520单身福利 520 单身福利

ArrayList与LinkedList性能大PK

Damon

java基础 5月日更

缅怀袁老

topsion

随笔杂谈

感恩父母

若兮

520 单身福利

Vue-2-常用指令

Python研究所

520 单身福利

模块4-作业

yu

今年过一次不一样的520!

liuzhen007

520单身福利 520 单身福利

网络攻防学习笔记 Day22

穿过生命散发芬芳

5月日更 网络攻防

设计千万级学生管理系统的考试试卷存储方案

Vincent

架构训练营

梯度下降法 - DAY12

Qien Z.

5月日更 过拟合 梯度下降法

虽不能至,心向往之|靠谱点评

无量靠谱

低代码/无代码和简单API

YonBuilder低代码开发平台

低代码

爱情从来都不是简单的事

阿泽🧸

520单身福利

Flink的程序结构

大数据技术指南

flink 5月日更

模块4作业4

杨彬

#架构实战营

密码学基础

escray

学习 极客时间 安全 5月日更 安全攻防技能30讲

Python - 日志处理(logging模块)

若尘

日志 log Python编程 5月日更

C语言不完全类型是什么?有什么用途?

不脱发的程序猿

C语言 C语言不完全类型

加密货币终将替代黄金?总价值已接近私人持有黄金价值

CECBC

打击挖矿和交易行为!

CECBC

Python自动化神器-Fabric

小圆子

520 单身福利

【渗透测试】hackthebox靶场之ScriptKiddie

Thrash

Struts 2试验热部署插件_Java_Andy Roberts_InfoQ精选文章