题库系统集成项目管理工程师

系统集成项目管理工程师 · 第三版 · 第4章 信息系统架构

SOA必须使用某一种RPC框架才能实现吗?

24 道章节练习题
单选题4.2 系统架构14 / 24

评审中有人提出:“应用间必须使用指定RPC框架进行同步调用,才能算面向服务架构;基于约定消息使用服务不属于SOA。”对此,最恰当的判断是()。

选择答案
未作答
答案与解析

正确答案 A

需要纠正的是“必须指定RPC框架”这个限制。教材讨论应用间按预定义协议相互配合,同时明确底层不一定采用RPC编程技术。服务协作与实现它的具体框架不能画等号,A正确。

订单应用提交履约请求,仓储应用按约定处理并返回结果,可以采用请求应答,也可以在适当业务条件下采用消息协作。选择哪一种,要看时效、失败处理等要求。注意,反对“只能同步RPC”,也不意味着装上消息队列就自动成为SOA:服务职责、接口和交互语义仍需设计。更不能为避开RPC,让调用方随意改写对方业务表,那改变了协作边界,并非题目给出的替代条件。

选项分析

A
区分了服务协作的架构要求与底层实现技术,没有给SOA额外加上唯一框架限制。
B
将一种可选调用方式提升为必要条件,题干所强调的同步和指定框架均不足以定义SOA。
C
虽然否定了原说法,却提出直接操作对方数据库的无关要求,不能据此定义服务协作。
D
消息可以用于跨应用通信,不能限定在同一进程;此项也无法支撑原来的排他性结论。

容易混淆的地方

把教材中的远程过程调用理解为必须采购某个RPC产品,或走向另一个极端,认为有消息中间件就足够。

再巩固一步

  • 遇到“必须某技术”先检查定义有没有这个前提。这里考架构与实现的层次,不考某个产品好不好。
原创章节练习题 · 第三版 · 《系统集成项目管理工程师教程》第3版 · 4.2.4 · 纸书第147页

练习小结

题目纠错

未发送。正式接收渠道尚未接通。

查看纠错信息