首页 理论教育 SOA三大特性在物联网技术应用开发中的应用

SOA三大特性在物联网技术应用开发中的应用

时间:2023-10-17 理论教育 版权反馈
【摘要】:传统的组件技术,如.NET Remoting、EJB、COM或CORBA,都需要有一个宿主来存放和管理这些功能实体;当这些宿主运行结束时,这些组件的寿命也随之结束。SOA架构非常强调实体自我管理和恢复能力。因此SOA系统推荐采用大数据量的方式一次性进行信息交换。

SOA三大特性在物联网技术应用开发中的应用

1.独立的功能实体

互联网使用环境中,任何访问请求都有可能出错,因此任何企图通过互联网进行控制的结构都会面临严重的稳定性问题。SOA非常强调架构中提供服务的功能实体的完全独立自主能力。传统的组件技术,如.NET Remoting、EJB、COM或CORBA,都需要有一个宿主(Host或者Server)来存放和管理这些功能实体;当这些宿主运行结束时,这些组件的寿命也随之结束。这样当宿主本身或者其他功能部分出现问题的时候,在该宿主上运行的其他应用服务就会受到影响。

SOA架构非常强调实体自我管理和恢复能力。常见的用来进行自我恢复的技术,如事务处理(Transaction)、消息队列(Message Queue)、冗余部署(Redundant Deployment)和集群系统(Cluster)在SOA中都起到至关重要的作用。

2.大数据量低频率访问

对于.NET Remoting、EJB或XML-RPC这些传统的分布式计算模型而言,它们的服务提供都是通过函数调用的方式进行的,一个功能的完成往往需要通过客户端和服务器来回很多次函数调用才能完成。在互联网环境下,这些调用给系统的响应速度和稳定性带来的影响都可以忽略不计,但是在互联网环境下这些因素往往是决定整个系统是否能正常工作的一个决定因素。因此SOA系统推荐采用大数据量的方式一次性进行信息交换。(www.xing528.com)

3.基于文本的消息传递

由于互联网中大量异构系统的存在决定了SOA系统必须采用基于文本而非二进制的消息传递方式。在COM、CORBA这些传统的组件模型中,从服务器端传往客户端的是一个二进制编码的对象,在客户端通过调用这个对象的方法来完成某些功能;但是在互联网环境下,不同语言、不同平台对数据甚至是一些基本数据类型定义不同,给不同的服务之间传递对象带来了很大困难。由于基于文本的消息本身是不包含任何处理逻辑和数据类型的,因此服务间只传递文本,对数据的处理依赖于接收端。

此外,对于一个服务来说,互联网与局域网最大的一个区别就是在互联网上的版本管理极其困难,传统软件采用的升级方式在这种松散的分布式环境中几乎无法进行。采用基于文本的消息传递方式,数据处理端可以只选择性地处理自己理解的那部分数据,而忽略其他数据,从而得到非常理想的兼容性

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈