浅析SOA解决方案及实践

SOA代表着一种面向服务的软件架构理念。基于SOA的软件系统的搭建以及解决方案的实施,现有的以中间件为核心的基础设施,除了提供基础公共服务和基础构件框架之外,还需要提供一些必要的关键支撑机制,同时在SOA相关工具的支持下才能得以有效实现。
基础设施
如图 1所示,基于SOA的软件系统的逻辑架构模型通常可以按功能分解为互动服务、流程服务、信息服务、伙伴服务、业务应用服务以及访问服务,它们分别代表了一些对支撑SOA架构中间件基础设施的要求。
 交互服务:交互服务与业务设计的表现逻辑有关,它是负责应用程序和最终用户之间交互的构件,当然,有时与外部世界的交互并不只限于与人的交互。交互服务通常至少包括企业门户和Web UI,前者是业务应用的客户端,后者则是访问企业门户的基础。
 流程服务:为了提高跨企业、部门的业务处理的效率和增强业务间的协同能力,SOA基础设施通常通过业务流程管理和流程引擎来对不同业务系统的服务进行编排、执行与监控。业务流程管理的核心目的是为了业务优化;SOA旨在提高业务敏捷性,对业务流程管理最大的改变就是可以显著降低业务基础服务的部署成本、提高业务基础服务的灵活性和可复用性。
 信息服务:信息服务包括了企业业务设计中的数据逻辑。一方面,需要对企业自身的业务数据的持久化进行有效的管理;另一方面,必须实现不同数据来源的异构数据之间的统一视图和整合管理,从而为需要信息的服务提供一个更简单的存取模式。该服务对基础设施的相关要求通常包括主数据管理、内容管理、信息集成、数据持久化等方面的内容。
 业务应用服务:业务应用服务实现企业的核心业务逻辑,它们是作为业务模型中的服务而专门建立的服务构件,代表着业务模型中不可分解的基础服务,但可以组成更高层次的服务。业务应用服务提供了统一的业务构件标准,规定了业务构件的用户访问行为、数据组织方式、功能封装方式、业务处理逻辑的标准“语法”。中间件基础设施必须为其实现提供服务构件容器,支持基础服务的封装、复合业务服务构件的组装等相关内容。
 接入服务:接入服务旨在将遗留应用程序集成进SOA。通常包括对其功能的简单包装,使它们作为服务,或者在较为复杂的情况下修改和增加现有功能的逻辑,以更好地满足业务设计的需求。接入服务要求基础设施提供相应的应用适配器服务,进行协议、数据等内容的有效转换。
 伙伴服务:以服务为中心的企业集成通过伙伴服务提供与企业外部的B2B的集成能力。因为业务伙伴系统的异构性,伙伴服务的实现需要基础设施提供多种传输协议和数据格式的支持,其处理方式和接入服务类似。

为了将分解之后的各种业务服务和基础服务进行有效地整合,SOA架构解决方案的基础设施平台针对性地提供了基于企业服务总线(ESB)方式的服务整合体系。ESB是所有类型服务的注册、储存、查找、调用的中介机构,为达成良粒度、松耦合并基于标准化的服务整合提供了消息引擎、通用事件框架和智能路由等必要机制。ESB是SOA解决方案得以顺利实施的核心基础设施。

图 1 SOA基础设施和工具示意图 



工具
基于SOA的解决方案的完整生命周期管理需要服务开发工具和管理工具的有效支持。服务开发工具提供从覆盖应用设计、服务建模,服务构件开发、服务编排与流程建模的完整服务实现的开发环境。服务管理工具则实现了服务解决方案的定义、部署、安全、监控及管理的SOA运营管理体系。服务开发和管理工具一起,提供了对基于SOA的解决方案的建模、装配、部署、管理的全生命周期一体化支持能力。
SOA实践
需要指出的是,SOA并非放之四海而皆准的真理,和其他软件技术一样,SOA也有其适用的场景,并非一切集成问题都适合用SOA来解决。一般地,遵循松耦合、良粒度以及标准化的SOA架构解决方案,其适用场景通常包括:
 易变的组织和业务架构
 开放互操作的技术体系
 各种异构性广泛存在的应用集成架构
 非性能关键的应用系统构建和集成
实施SOA,首重决策,除了适用性的考虑以外,还需要充分考虑到其中各种技术和非技术的困难,例如,投入大、周期长,投资回报率难估算;人的观念、积习难改;成功案例难觅;真正掌握SOA理念且具备实施SOA能力的人才难觅等等。
在实际的基于SOA的开发活动中,最适用的开发方法是综合自顶向下和自底向上这两种方法的优点,寻求两者之间的结合点,采取中间相遇的方法来进行,如图 5所示。业务人员和开发者都各自循序渐进地做自己擅长的事,在过程中不断沟通,这样就能够使得业务的改变得到最快响应,并且不会影响开发效率,最终两者能够在某一点相遇,从而搭建起符合需求的系统。这样既可以充分利用业务驱动的自顶向下方法所带来的业务敏捷性,同时自底向上方法也确保了企业已有IT资产能得到有效地封装和再利用。

图 2 SOA开发方法 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
eFuse是一种电子设备中的可编程保护元件,用于在系统启动时进行安全验证和防止非法访问。eFuse通常由一个可编程的多级存储器和一个比较器组成,用于存储和比较系统的安全配置信息。 eFuse在系统启动时起到了关键的安全保护作用。在系统开始启动之前,eFuse会被预编程以存储预先定义的安全配置信息,如设备的唯一标识符、启动密钥、数字签名等。在启动过程中,eFuse会将存储的安全配置信息与实际配置进行比较,以验证系统的完整性和安全性。 安全启动是通过eFuse实现的一种技术,它在系统启动过程中提供了一系列认证和验证步骤,以确保系统只能启动可信任的软件和固件。安全启动的目的是防止恶意软件和未经授权的访问,从而保护系统的安全性和机密性。 安全启动通常包括以下步骤:首先,系统在启动时会将eFuse中存储的安全配置信息读取到比较器中进行比较。如果比较结果是一致的,系统将继续启动。如果比较结果不一致,系统可能会中断启动或采取其他安全措施,如锁定设备或报警。 除了对比eFuse中的配置信息,安全启动还涉及其他安全检查,如签名验证、启动密钥的匹配等。通过这些多层次的安全认证,系统可以确保只有经过授权的软件和固件才能被加载和执行,从而保证系统的安全性。 总结起来,eFuse是一种可编程保护元件,用于存储和比较系统的安全配置信息。安全启动是通过eFuse实现的一种技术,通过认证和验证步骤保证系统只能启动可信任的软件和固件。通过eFuse和安全启动,系统可以提供更高的安全保护,防止非法访问和恶意软件的攻击。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值