检查Red Hat JBoss BRMS部署架构的规则和事件(第一部分)

(文章来宾与北美红帽公司高级中间件顾问约翰·赫洛克 ( John Hurlocker)合着)
技巧和窍门 在本周的技巧中,我们将放慢速度,并仔细研究可能的Red Hat JBoss BRMS部署体系结构。


当我们谈论部署架构时,我们指的是在企业中部署规则和/或事件项目所需的选项。

这是您在设计阶段开始时就需要规划的实际运行时体系结构,以确定企业和基础架构的最佳方法是部署即将到来的应用程序。 它还很可能会影响您如何设计要构建的实际应用程序,因此,了解您的选择将有助于使您的项目成功。

这将是一个由多个部分组成的系列,它将分阶段介绍部署架构,从本周开始的前两个架构开始。

可能性

规则管理员或架构师与应用程序团队合作,为规则设计运行时体系结构,并且根据组织的需要,该体系结构可以是以下任何一种体系结构或以下设计的混合体。

在本系列中,我们将介绍四种不同的部署架构,并讨论一种设计时架构,同时提供每种架构的优缺点,以便根据自己的需要评估每种架构。

随附插图中显示的这些体系结构的基本组件是:

  • JBoss BRMS服务器
  • 规则开发人员/业务分析师
  • 版本控制(GIT)
  • 部署服务器(JBoss EAP)
  • 客户使用您的应用程序
图片1
图1:应用规则

在应用程序中部署的规则

在企业架构中部署规则和事件所需的所有选项中,第一个架构本质上是最基本和最静态的。

应用程序的可部署工件(例如EAR,WAR)中包含一个可部署规则包(例如JAR)。

在这种体系结构中,JBoss BRMS服务器充当存储规则和设计时工具的存储库。
图1显示了JBoss BRMS服务器如何保持与部署或运行​​时环境的完全断开。

优点

  • 通常,与使用规则执行服务器相比,性能更好,因为规则执行与应用程序在同一JVM中

缺点

  • 没有能力将规则更新推送到生产应用程序
    • 需要完全重建应用程序

image2
图2: KieScanner部署

从应用程序扫描的规则

您可以使用第二种架构来稍微修改前一种架构,
是将扫描仪添加到您的应用程序,然后监视新规则
和事件更新,将它们部署到您的企业体系结构中。

JBoss BRMS API包含一个KieScanner ,用于监视规则存储库
用于新的规则包版本。 一旦有新版本可用 它会被KieScanner拾取并加载到您的应用程序中, 如图2所示。

Cool Store演示项目提供了一个示例,演示了JBoss BRMS KieScanner的用法,并提供了一个示例实现 ,该示例实现显示了如何扫描规则存储库中的最新构建的软件包。

优点

  • 无需重启应用服务器
    • 在某些组织中,应用程序的部署过程可能非常漫长

缺点

  • 需要创建一个部署过程来测试应用程序的规则更新
    • 如果上述过程未经过全面测试,就有将错误逻辑推入应用程序的风险

接下来

下次,我们将深入探讨剩下的两个部署架构,这些架构为您提供了Execution Server部署混合部署模型,以在单个架构中利用多个元素。 最后,我们将介绍设计时架构,供您的团队在制定和维护企业中的规则和事件时使用。

翻译自: https://www.javacodegeeks.com/2014/07/examining-red-hat-jboss-brms-deployment-architectures-for-rules-and-events-part-i.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/362764.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSS_选择符

2016-10-28 《CSS入门经典》第五章 以下提示注意事项: 1.如何选择使用id选择符还是class选择符:当确信id选择符在页面的唯一性时,就可以使用id选择符。 2.通用选择符在所有元素上设置样式,并不是只设置继承的默认值。 eg&…

TFS2010配置SQLServer2008R2 tf255049错误

TFS2010配置SQLServer2008R2时,配置数据库时提示 tf255049错误。转载于:https://www.cnblogs.com/ShuaiHo/archive/2010/05/12/1733731.html

位运算笔记2.0

声明: 本文为转载文章 转载于:https://www.cnblogs.com/ShineEternal/p/10853132.html

教程–带有Jersey和Spring的Java REST API设计和实现

想要在Java中使用REST? 然后您来对地方了,因为在博客文章中,我将向您介绍如何“美丽”地设计REST API,以及如何使用Jersey框架在Java中实现它。 在本教程中开发的RESTful API将为存储在MySql数据库中的播客资源演示完整的Create&a…

ie6 下最佳 PNG透明方案【转】

“咳! 哎!….. ” 你听见了么? 这些都是大家抱怨IE6下不能实现png图片漂亮的明效果的哀叫声,的确是无奈呀….. 不过现在幸运的是,我们能够让这一切的抱怨都停止. 网络上解决IE6下Png透明解决方案有很多,例如 IE PNG Fix from TwinHelix, Javascript IE PNG Fix, Transparent …

安装svn、git等托管软件

安装软件,配置环境。下面我找到的别人写的,写的都很详细,做个记录。就不在这里写具体步骤了。 1.nodejs安装 使用vue-cli 搭建项目的时候需要nodejs,node是比较方便的,打包部署,解析vue单文件组件&#xff…

HBase:为客户行为生成搜索点击事件统计信息

在本文中,我们将探索HBase来存储客户搜索点击事件数据,并利用其基于搜索查询字符串和构面过滤器点击来获取客户行为信息。 我们将介绍如何使用MiniHBaseCluster,HBase Schema设计,使用HBaseSink与Flume集成以存储JSON数据。 在之…

WildFly 8.1.0.Final上的SwitchYard 2.0.0.Alpha1入门

最近,我一直在关注一些热门的RedHat技术,在其中很多有趣的部分中,我找到了SwitchYard 。 过去,对于所有人都围绕SOA和面向服务的体系结构不屑一顾,这对我来说一直很奇怪,作为Java EE开发人员。 过去&#…

zTree 优秀的jquery树插件

zTree 优秀的jquery树插件,文档详细&#xff0c;渲染快 使用方法&#xff1a; 1、引用zTree的js和css文件   <link href"~/Content/zTree_v3/css/zTreeStyle/zTreeStyle.css" rel"stylesheet" /><script src"~/Content/zTree_v3/js/jque…

Android 小項目之---Iphone拖动图片特效 (附源码)

曾经被Iphone用手指在屏幕上滑来滑去拖动图片的操作方式吸引吗&#xff1f;在Android里头&#xff0c;这并不是什么难事。 所需要的技术点如下&#xff1a;Android.content.Context 、Android.widget.BaseAdapter、Android.widget.ImageView等通常会用在设计相册、 图片类型的选…

前端打印功能

方法一&#xff1a; html代码&#xff1a; 在要打印的内容上加入&#xff1a;<!--startprint-->和<!--endprint--> js代码&#xff1a; $(.printData).click(function(){bdhtmlwindow.document.body.innerHTML; sprnstr"<!--startprint-->"; …

同步多线程

同步多线程&#xff08;SMT&#xff09;是一种在一个CPU 的时钟周期内能够执行来自多个线程的指令的硬件多线程技术。本质上&#xff0c;同步多线程是一种将线程级并行处理&#xff08;多CPU&#xff09;转化为指令级并行处理&#xff08;同一CPU&#xff09;的方法。 同步多线…

Centos7安装Python3的方法

由于centos7原本就安装了Python2&#xff0c;而且这个Python2不能被删除&#xff0c;因为有很多系统命令&#xff0c;比如yum都要用到。 [rootVM_105_217_centos Python-3.6.2]# python Python 2.7.5 (default, Aug 4 2017, 00:39:18) [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)…

ajax请求导致status为canceled的原因

在使用layui的form表单提交以后&#xff0c;请求状态总是canceled。后来在form表单的后面添加了一行代码&#xff1a; return false; 就可以了。 文档&#xff1a;https://www.layui.com/doc/modules/form.html#onsubmit 错误&#xff1a; 解决方法&#xff1a; 总结一下&…

点击返回上一页失效

点击取消的时候&#xff0c;返回上一页&#xff0c;没有效果&#xff0c;仍然停留在当前页&#xff0c;还报500&#xff1b;改成window.history.go(-1)也不生效 代码&#xff1a; <button class"st-btn-normal st-btn-cancel cancle" onclick"javascript:wi…

如何通过7个Logback调整立即改善Java日志记录

基准测试可帮助您发现Logback在压力下的性能 日志记录对于服务器端应用程序是必不可少的&#xff0c;但这是有代价的。 令人惊讶的是&#xff0c;微小的更改和配置调整对应用程序的日志记录吞吐量有多大影响。 在这篇文章中&#xff0c;我们将根据每分钟的日志条目对Logback的性…

JS中的编码

今天发现我输入的中文变成了另外一种格式&#xff0c;查了一下&#xff0c;原来是转换成了数字编码。在这里介绍一下数字编码和base64&#xff0c;做个记录 1.出现原因&#xff1a;在开发中经常需要对用户输入的数据进行编码然后才能通过HTTP请求发送给后台&#xff0c;或者对…

【Flutter】解决依赖版本冲突

为什么会存在版本依赖问题 我们在开发flutter项目中&#xff0c;常常会依赖第三方库。flutter依赖项越多&#xff0c;就越有可能出现依赖版本冲突。 Because new_trend depends on build_runner >0.9.0 which requires SDK version >2.0.0-dev.61 <3.0.0, version sol…

安装vue-cli时报错

今天用npm安装vue-cli时一直报错&#xff0c;后面百度说用cnpm重装&#xff0c;结果还是报错&#xff0c;后面找到一个博主的&#xff0c;说是vue升级的原因&#xff0c;vue init webpack hello-world 已经替换为 vue create hello-world npm install -g vue/cli-init # vue…

CenterNet算法笔记(目标检测论文)

论文名称&#xff1a;CenterNet: Keypoint Triplets for Object Detectiontection 论文链接&#xff1a;https://arxiv.org/abs/1904.08189 代码链接&#xff1a;https://github.com/Duankaiwen/CenterNet 简介 该论文是由中科院&#xff0c;牛津大学以及华为诺亚方舟实验室联合…