问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

软件选型:如何从技术上选择中间件

发布网友 发布时间:2022-04-24 21:09

我来回答

1个回答

热心网友 时间:2023-10-11 08:46

  评估中间件掌握方法是关键  要选择一个技术上符合要求的中间件既要了解自己的需求,还得能对一个中间件软件作出技术上的评估。我们这里不谈如何了解您的需求,只谈如何对中间件做技术上的评估。随着中间件的广泛应用,最终用户和应用开发商时常面临这个问题。中间件的种类越来越多,单一产品的功能特性又越来越丰富,如果不得要领,就会陷入到无尽的细节之中。因此,掌握方法就非常重要。  选择中间件当然不能只关注技术,必须考虑厂商实力、提供的服务、价格等相关因素,但技术上是否满足需要无疑是位居第一位的。  以同类中间件的“标准功能”作为参考  你完全可以从你的具体需求出发,看看这个软件是否适用,或者好不好。如果你知道你要评估的这一类中间件软件通常具有的功能——我们称它是“标准功能”——你就有了一个可作为参考的依据。你可以看一看你面前的中间件有没有这些“标准功能”,如果没有,是否对你有重要的影响。  把握功能需求、非功能需求与技术标准三个方面  我们在设计一个软件时,可以把对软件的需求划分成功能需求和非功能需求。功能需求指明软件必须执行的功能,定义系统的行为——即软件在某种输入条件下要给出确定的输出必须做的处理或转换。功能需求通常是软件功能的“硬指标”——如“支持分布式环境中消息的可靠传输”;非功能需求不描述软件做什么,描述软件如何做。非功能需求通常作为软件设计的“软指标”——如“系统具有可伸缩性”。为此,我们可以把功能需求对应的功能称为“功能性特征”,把非功能需求对应的功能称为“非功能性特征”。评估一个中间件软件,最主要的是看这个软件的功能,包括功能性特征和非功能性特征,是否符合我们的要求,或者符合大多数人的通常要求。  如果你知道某一种中间件软件的“标准功能”,你可以进一步把它分成“功能性的特征”和“非功能性特征”。如果你不知道,你只需从你的需求出发,研究一下你面前中间件的“功能性特征”和“非功能性特征”是否满足你的功能需求和非功能需求。  中间件是处于支撑地位的通用软件,其技术的标准化具有重要意义。中间件对技术标准的支持表现为使用标准的API、使用标准化的技术和实现标准化的功能等几个方面。中间件支持标准通常意味着用户和应用对厂商的依赖更小、应用开发人员学习使用一种新产品更容易,中间件软件可以和更多的系统互操作,技术更开放。因此,评估一个中间件不仅要看它是否具有某项功能,还要看这个功能是否使用了标准的技术。  功能性特征是中间件的基本特征  中间件的功能性特征是一种中间件软件的基本特征。不同种类的中间件的差异首先表现为基本功能的不同,因此我们不能总结出一套适合所有中间件门类的、一般性的“功能性特征”。  对于某一个具体的中间件软件,我们能够把它的功能性特征提取出来。我们假定某一中间件定位于解决分步式环境中消息的发送者和接收者之间消息传输、管理和控制问题,该软件提供了多种消息交换方式、支持多种消息类型,提供可靠传输等服务质量控制机制,该软件支持多系统平台,支持高吞吐量的业务处理…很显然,我们可以把“提供多种消息交换方式、支持多种消息类型,提供可靠传输等服务质量控制机制”看成是该中间件的功能性特征,而把“支持高吞吐量的业务处理”作为非功能性的特征。  如果中间件的选择者能够从自己的需求中归纳出对中间件的“功能需求”,就可以把它们和面前的中间件的功能性特征做一下对照。  功能性特征一般比较容易测试,因而也比较容易验证。  非功能性特征是跨中间件的共性特性  软件的“非功能需求”是软件需求的重要方面。中间件软件的“非功能性特征”也是中间件功能的重要方面。事实上,中间件软件的非功能性特征是跨中间件种类的、非常重要的一般性特征,是中间件软件功能强大的表现。  我们这里采用了AberdeenGroup在2000年的《中间件——达成灵便的电子商务的技术基础》一文中对成功的中间件的共性特征的归纳(做了一点裁减):  许多情况下,非功能性和功能性并非有严格的界线。比如,对于消息中间件来说,可靠传输一定是功能性的特征;对于其它的中间件未必如此;对于安全中间件来说,安全不能算作非功能性特征。  非功能性特征一般比较难以测试,但仍然是一定程度可测试的。  支持标准对于中间件必可缺少  面向消息的中间件一直以来缺乏技术标准/规范。自从J2EE制定出基于Java的Java消息传输服务(JMS)以后,人们对消息中间件的技术要求就有多了一项内容。相比较而言,事务处理监控程序(交易中间件)相关的技术规范就要多一些,主要是X/OPEN(现称为OPENGROUP)的分布式事务处理系列规范,包括TPM的架构、应用与TPM的接口及事务提交管理协议等重要内容。对于J2EE应用服务器,技术规范的影响就更大。我们甚至可以说,J2EE应用服务器的功能体现在了对技术标准和规范的支持上。  标准/规范虽然重要,我们不可迷信,唯标准是从。因为,第一,“标准”可能仅是建议性的,并非所有的厂商都会遵守;第二,“标准”可能是妥协的结果,只是将提交的多个可选内容统统收入,各项内容甚至不能互换;第三,“标准”可能是不完整的,仅仅实现了标准要求的内容可能意味着欠缺重要的功能。  比如,X/OPEN DTP模型中定义的应用与TPM的接口就是妥协的结果。所谓“标准”就是两个厂家提交的完全不同的建议的罗列,两者完全不能互换。事实上也未见第三家厂商遵从上述的“标准”。这样的“标准”也只咎由自取参考意义。在看JMS,JMS当前规范只涉及一个消息服务器,规范只保证该服务器的客户方都使用一个一致的接口。如果厂商只是实现了JMS规范定义的内容,那么它就必不能支持服务器到服务器之间的可靠传输,其功能就会大打折扣。无论是用户还是中间件厂商,对标准都不应该迷信。  中间件对标准的支持一般会体现在软件的功能性特征上,多数情况下是可测试和验证的。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
海关老师:你好. 如果是加工贸易手册报关的话,报关单价要与手册备案的... 上海危险品报关公司哪家好 长辈可以为老不尊出口成脏晚辈们却连句重话也不能对长辈说试问这样的长... 老一辈为什么这么喜欢拿态度说事? 系统集成项目管理工程师(一):信息化知识 "压哨"的英语怎么拼啊 周山打鱼的年薪多少钱 望穿秋水(打一动物)谜底及原因 想买一本词典 古代汉语字典买哪一种版本比较好? 怎么理解 Mongoose 的 pre 中间件,还有 path 旧手机换上新的原厂电池后,电量和新手机一样吗? net 中间件有哪些 做中间件销售,需要懂些什么东西。 消息中间件是什么意思? 什么是中间件?? 男孩叫宇泽有什么含义 减肥,腿上肉很松弛,怎么办 星宇名字寓意是什么? 小腿是松弛的怎么瘦 运动瘦腿时发现腿部肉变松弛是怎么回事? 如果名字中有一个宇字,要怎样解释它的意思呢 腿部肌肉松弛,如何迅速锻炼 小腿肌肉变得很松弛是怎么回事 峻宇两字作为男孩子用名如何,有何意义 腿部肌肉很松弛想减肥怎么办 瘦瘦的但腿部肌肉松弛,如何训练能快速让大腿外侧的肌肉变得紧绷?_百度... 腿部肌肉松弛是为什么 腿部松弛怎么办?我很瘦啊 大腿的肉突然很松弛是怎么回事阿 net core支持中间件开发吗 JAVA 程序为什么需要中间件 什么是消息中间件,比如tonglink主要起什么作用 laravel 中间件参数可以是数组么 耳垂上好多小痘痘,很痒 耳垂先是痒,抓了之后长了一些小痘痘 我的两个耳朵的耳垂特别红 特别痒 上面有好多小痘痘 这是怎么回事 耳垂轮廓长了好多小痘痘,有时候还很痒,两个耳朵上都长了,这几天才有的,好像越来越多了,怎么回事 右耳垂长了个痘痘有时候痒还会流脓。 两个月前开始,下巴 耳下 耳垂后 长了很多又紫又红的痘痘 很痒 摸上去硬硬的块儿状,还有点疼 难消下去 耳垂下方起过痘痘很痒扣破后结痂现在不痒了但是一直没 耳朵边上长了个像痘痘一样的东西,的两天了,好痒还发热这是怎么了 内科或者皮肤科专家进,耳垂上长痘痘 五年级语文该怎么学习呢? 五年级语文如何提高成绩 五年级语文要怎么才能学好? 在现在的小学课本中,五年级的语文课本有哪些古诗? 耳垂上起了一些小痘痘,手上和脖子后面也有怎么回事会痒 五年级语文辅导内容有哪些 五年级语文如何提高