50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

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:304757
用户头像

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

关注

评论

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

架构师训练营第2期 第1周 作业二:学习总结.md

老腊肉

6小时搞定云原生:从基础概念到上手实践

京东科技开发者

云原生

在线EXCEL编辑器-Luckysheet

奇异石榴果

Java 开源 Excel bigtable js

发布3个月获得5K Star的Luckysheet - 基于MIT协议的开源电子表格

奇异石榴果

Java 开源 大前端 Excel html/css

Linux内核系统结构

Linux 操作系统 内核 系统调用 操作系统结构

Docker架构

混沌畅想

Docker 容器 Docker架构

「架构师训练营」第 1 周作业 - 食堂就餐卡系统设计

小黄鱼

极客大学架构师训练营

一文带你读懂 Swift 社区最新开源的算法库

镜画者

ios swift 算法 apple

服了,这款开源类库可以帮你简化每一行代码

沉默王二

Java GitHub 后端 hutool

一份超级完整实用的PyCharm图解教程,8K字赶紧收藏起来

计算机与AI

Python IDLE 开发环境

程序员喜欢的 5 款最佳最牛代码比较工具

程序员生活志

编程 工具

java安全编码指南之:线程安全规则

程序那些事

java安全编码 java安全 java安全编码指南 java代码规范 java代码安全

spring-boot-route(二十三)开发微信公众号

Java旅途

Java Spring Boot

勾魂!在Github白嫖左程云1470页数据结构与算法+视频

996小迁

Java 架构 面试

iOS性能优化 — 二、卡顿监控及处理

iOSer

性能优化 编程语言 监控 ios开发 卡顿

架构师训练营第2期 第1周 作业一:食堂就餐卡系统设计

老腊肉

c++bind函数使用

良知犹存

c++

1024!奈学教育致敬程序员3+2战略发布会重磅来袭

奈学教育

1024 奈学教育

项目吐槽之需求分析一

Geek_XOXO

项目管理 pmp

MyBatis-技术专题-动态SQL

码界西柚

week04总结

xxx

甲方日常 36

句子

工作 随笔杂谈 日常

分布式缓存架构,消息队列,负载均衡

garlic

极客大学架构师训练营

编码之路,与君共勉

yes

程序人生

一文搞懂ReactNative生命周期的进化

凌宇之蓝

react.js 面试 大前端 React Native

Scikit-Learn中的特征排名与递归特征消除

计算机与AI

学习 数据科学 特征选择 降维 scikit-learn

分布式文件存储数据库 MongoDB

哈喽沃德先生

数据库 nosql mongodb mongo 非关系型数据库

C/C++最佳实践

jiangling500

c c++ 最佳实践

week04 作业

xxx

Java中的5大队列,你知道几个?

王磊

Java

【得物技术】谈谈缓存的一二三四五

得物技术

缓存 架构 技术 缓存穿透 缓存击穿

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