JBOSS简介

发布时间:2021-12-04 00:58:44

Jboss基础:
JBoss是一个开源的符合J2EE规范的应用服务器,作为J2EE规范的补充,Jboss中引入了AOP框架,为普通Java类提供了J2EE服务,而无需遵循EJB规范。Jboss通过类载入时,使用Javassist对字节码操作实现动态AOP框架,Javassist是一个开源的编辑字节码的类库。
Jboss中参考,切入点与方面也由普通Java对象实现,并使用XML文件配置。Jboss的连接点模型与AspectJ略有不同,提供了一系列预定义的切入点,包括类匹配,方法调用,构造器调用,域访问,特定的调用与被调用关系。通过这些切入点的逻辑运算,可以实现更为复杂的切入点。方面为Java类,参考是其中的一个方法,方面中不含切入点,方面主要为各种拦*鳎↖nterceptor),拦*骷次缓桓霾慰嫉姆矫妫ヒ涣拥闵峡捎啥喔隼菇*餍纬衫菇*髁矗菇*髦葱卸钔獾牟僮鳌6苑椒ǖ睦菇赜葾dvisor类管理,在连接点依次调用拦*鳎⒆钪盏饔帽宦呒姆椒ā6赜谇腥氲悖慰家鸭胺矫娴男畔⒂葾spectManager管理。此外,Jboss提供对元数据的支持,用于为类,方法,构造器以及域添加额外的属性,并可在运行期访问。
为实现拦截,Jboss需要修改类的字节码,大致过程如下。
XML配置文件中关于切入点,拦*鳎菀约盎旌侠嗟男畔⒃谟τ贸绦虿渴鹗北欢寥搿⒔馕觯⑸上嘤Φ亩韵螅庑┬畔⒂胧道亩韵笥葾spectManager管理。在需要混入方面代码的类载入时,AspectManager将创建Advisor类,将方面相关信息传递给它,并对类的字节码进行修改,之后将修改过的字节码交给类载入器完成类的装载。字节码的修改主要是对被载入的类添加一系列方法用于代理那些匹配连接点的方法调用,构造器调用,域访问以及方法导入,转为对Advisor类相应方法的调用。类中各方法将重命名,保留原方法体,并添加一个与原方法同名的方法,在这个方法中调用那些代理方法,用来将调用代理给Advisor类,或调用重命名的原方法。对于域访问,分别添加两个方法,对应于读与写操作,将域访问代理至Advisor类,在访问这个域的类中,则需将对域的访问转换为对上述方法的调用。对于构造器调用,则添加一个方法,将调用代理至Advisor类,并对构造对象的类的构造代码作相应转换。对于导入,被导入的类中将添加一个混合类实现的引用,并添加混合类接口中的方法,将对混合类方法的调用代理至Advisor类,并最终调用混合类的实现。相关类载入后,初始化Advisor类,填入拦*髁矗酝瓿烧龃砉獭
JBOSS应用服务器还具有许多优秀的特质:


它将具有革命性的JMX微内核服务作为其总线结构;

它本身就是面向服务的架构(Service-Oriented Architecture,SOA);

它还具有统一的类装*鳎佣芄皇迪钟τ玫娜炔渴鸷腿刃对啬芰Α
因此,它是高度模块化的和松耦合的。JBoss用户的积极反馈告诉我们,JBoss应用服务器是健壮的、高质量的,而且还具有良好的性能。
JBOSS发展史
常见应用服务器:

JBoss的服务器架构概述
JBoss的构架和其他J2EE应用服务器的构架有着巨大的不同。JBoss的模块架构是建立在JMX底层上的,下图展现了JBoss主要组件和JMX的联系。
JMX - 层次
JMX是一个可复用框架,它为远程(Remote)和本地(Local)管理工具扩展了应用。它的架构是层式架构。他们是实现层(instrumentation layer)、代理层(agent layer)和发布层(distribution layer)。其中,发布层还在等待未来的标准化。简要的表述是,用户使用管理Bean,MBean来提供获得相应资源的实现方法。实现层实现相关的特性资源并将它发布于JMX相关应用中,它的代理层控制和发布相应的注册在MBeanServer代理上的管理资源。 JBoss主要模块
主要的JBoss模块是在MeanServer上的可管理MBean。
1.JBoss EJB容器是JBoss服务器的核心实现。它有两个特性,第一是在运行期产生EJB 对象的Stub和Skeleton类,第二是支持热部署。
2.JBossNS是JBoss命名服务用来定位对象和资源。它实现了JNDI J2EE规范.
3.JBossTX 是由JTA/JTS支持的交易管理控制。
4.部署服务支持EJB(jar)、Web应用文档(war)和企业级应用文档(ears)的部署。它会时刻关心J2EE应用的URL情况,一旦它们被改变或出现的时候将自动部署。
5.JBossMQ使Java 消息规范(JMS)的实现。
6.JBossSX支持基于JAAS的或不支持JAAS机制的安全实现。
7.JBossCX实现了部分JCA的功能。JCA制订了J2EE应用组件如何访问基于连接的资源。
8.Web服务器支持Web容器和Servlet引擎。JBoss 2.4.x版本支持Tomcat 4.0.1,Tomcat 3.23和Jetty 3.x服务。
JBoss架构设计中的两个重要的特性
第一是使用JMX作为一个软件总线垂直的贯穿其所有的服务,通过将新的服务组件遵循JMX规范挂接上"总线",使得系统扩展现有的服务变得容易。可插入式框架被广泛的运用于服务的实现。开发者可以选择他们需要的服务并编写他们所需要的相应实现,通过定义在部署描述文件中,让JBoss服务器知道。

第二是容器被设计成为动态代理机制,这样使容器的实现变得简单和使开发者避免费劲的将jar文件进行预编译以获得stub和skeleton代码。但是这样做潜在的问题是性能和可测性,因为我们知道java反射机制会引起性能的损失。JBoss中存在着相应的优化方案并且在将来的研究中我们会论述该优化方法在什么时候工作并且是如何工作的。

相关文档

  • [C++ 学习笔记 3] std::make_shared 和 std::enable_shared_from_this
  • 六年级下册数学比和比例综合练习题
  • 浅谈Java反射机制 之 获取类的字节码文件 Class.forName(
  • 管理散漫团队的方法
  • 常用的简单英语口语句子三篇
  • 高三记忆力减退该怎么办
  • 远程教育教学总结
  • 关于梦想与成功的故事三篇
  • 墨香花间事,素调轻轻摇
  • 高考英语必背文章
  • 试管婴儿会有哪些后遗症2018做试管婴儿的过程有什么并发症
  • 假期教育培训总结
  • 一年级数学下册的期中试题
  • 湖北天门确定2020年中考时间:7月20日-22日
  • 学校“七认真”检查方案
  • 连接Mysql乱码问题
  • 盼望下一个冬天(转载)
  • 普桑坡道定点停车技巧点
  • 面试时轻松的自我介绍
  • 幼儿园春游通知怎么写
  • 幼儿园劳动节放假通知
  • 让人伤感的签名想哭的句子
  • 别对我说没有未来的歌词
  • 为什么新锅开锅有些地方黑 铁锅开锅烧黑了怎么办擦亮
  • 手机短信收发
  • 高中合作作文700字
  • 州碧云茶有什么功效与作用
  • 好用的手机备份软件
  • 2018年度中科院各类研究生奖学金初选通知
  • 去哪吃怎么报名约饭?去哪吃约饭方法
  • 猜你喜欢

  • 包钢_460mm三辊连轧管机组的工艺装备特点
  • 宜君县致源种植专业合作社企业信息报告-天眼查
  • 气象仪表项目可行性研究报告(可编辑)
  • 幼儿园中班下学期安全教案《我们不玩火》含反思
  • 黑龙江省永通物流有限公司企业信用报告-天眼查
  • 无土育苗技术处理
  • 笔记本电脑无法进入睡眠状态_在Win10 v2004以上版本启用S3睡眠并禁用Modern Standby待机的终极解决方案...
  • 高一叙事作文:写给高一_800字
  • 2013年高考数学总复* 9-7 用向量方法证明*行与垂直(理)课件 新人教B版
  • 铝电极箔材料项目投资申请报告
  • 2017-2023年中国及全球冷热玻璃棉管行业市场发展战略分析及投资前景专项预测报告(目录)
  • 在天源迪科TYDIC办理离职。。
  • 辽宁省鞍山市岫岩县红旗营子中学八年级语文上册《老王》导学案(无答案) 新人教版
  • 高考语文二轮复*专题训练:第1部分第7章 特色训练1 《〈论语〉选读》和其他典籍的组合训练
  • 营销部文明单位申报材料与营销部电话销售工作总结汇编.doc
  • 焊接培训 国际认证 联接世界 共创未来
  • 鱿鱼烧五花肉的做法
  • 整形手术的风险 The Risks of Plastic Surgery
  • 河北鼎一久通信工程有限公司(企业信用报告)- 天眼查
  • 考研复试英语常见的问题有哪些
  • 2006年华南理工大学452物理化学考研试题
  • 2020年小学六年级毕业典礼主持词范文
  • 日用耳软骨再造气管软骨
  • 河北省唐山市曹妃甸区七年级政治下学期期末考试试题(扫描版) 新人教版
  • 216014公司自行制作广告作业流程
  • 【精编】中小学精品课件制备实验方案的设计课件.ppt
  • 20XX年10月小学教师述职述廉报告
  • 选修七 3《Unit 3 Listening and speaking》PPT课件 公开课精品课件 公开课精品课件
  • 格兰仕 2008空调终端导购培训之空调产品培训
  • 关于游子吟教案
  • 人教版七年级数学上册4.2_直线、射线、线段(第2课时)课件ppr优秀课件
  • 2013年执业中药师,真题,中药学综合知识与技能
  • 陕西汇腾投资有限公司(企业信用报告)- 天眼查
  • 最新房地产工作计划安排
  • 【优质】小学生作文仿写荷花-范文模板 (2页)
  • 学习Ant Design Pro 从入门到放弃 第一节:搭建项目
  • 【免费下载】呼和浩特市赛罕区第二十二中学校园管理材料
  • 六个月宝宝咳嗽有痰流鼻涕怎么办
  • 龙岩市系统集成公司研究报告2018版
  • PBL教学在中医内科学课堂教学中的应用
  • 江苏省造价工程师考试安装计量知识:锅炉给水的处理方法试题
  • 八年级历史上册第五单元人民解放战争的胜利第22课三大战役与全国解放*题讲评课件岳麓
  • 电脑版