嵌入式中间件_2.嵌入式中间件的分类

1.中间件的分类 

        中间件的范围十分广泛,针对不同的应用需求涌现出了多种各具特色的中间件产品。因此,在不同的角度或不同的层次上,对中间件的分类也会有所不同。

        根据IDC在1998年对中间件进行的分类,把中间件分为终端仿真/屏幕转换中间件数据访问中间件远程过程调用中间件消息中间件、交易中间件对象中间件六大类。但是,如今所保留下来的只有消息中间件和交易中间件,其他的类型已经逐步融合到其他产品中,在市场上已经没有单独的产品形态出现。 

        从现代中间件观点看,通用中间件大致存在以下几类。

  • 企业服务总线中间件(Enterprise Service Bus,ESB):ESB是一种开放的、基于标准的分布式同步/异步信息传递中间件。通过XML、Web服务接口以及标准化基于规则的路由选择文档支持,ESB为企业应用程序提供安全互用性。
  • 事务处理(Transaction Processing,TP)监控器:为发生在对象间的事务处理提供监控功能,以保证操作成功。
  • 分布式计算环境(Distributed Computing Environment):指创建运行在不同平台上的分布式应用程序所需的一组技术服务。
  • 远程过程调用(Remote Procedure Call):指客户机向服务器发送关于运行某程序的请求时所需的标准。
  • 对象请求带来(Object Request Broker,ORB):为用户提供与其他分布式网络环境中对象通信的接口。   
  • 数据库访问中间件(Databse   Access Middleware):支持用户访问各种操作系统或应用程序中的数据库。
  • 消息传递(Message passing):电子邮件系统是该类中间件的其中之一。
  • 基于XML的中间件(XML-Based Middleware):XML允许开发人员为实现Internet中交换结构化信息而创建文档。   

 2.嵌入式中间件

        在嵌入式系统领域,最普遍使用的嵌入式系统实时中间件包括通用对象请求代理体系结构(Common Object Request Broker Architecture,CORBA)和它的衍生结构:数据分发服务(Data Distribution Service,DDS)。这些中间件架构是基于对象管理组织(Object Management Group,OMG)公布的标准。在CORBA架构中,有很多专有的衍生标准可供选择,包括实时CORBA、嵌入CORBA和最小化CORBA。

        中间件还可适合更大规模的、由多个软件组件和应用组成的,并可分布在多个处理器和网络上的嵌入式应用。当这些组件由不同的组织开发,系统将会被不同的组织扩展,或者当系统有很长的生存期时,使用标准中间件可以给开发者提供显而易见的好处。这些中间件架构是设计模式的完整集合,例如代理模式(Proxy)、数据总线模式(Data Bus)和中介模式(Broker Pattern)等。 

        从上述论述来看,嵌入式中间件没有固定技术界限,可根据系统面向的不同应用而被不断扩展,CORBA和DDS是嵌入式系统最为常用的两种中间件。

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

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

相关文章

面试题——Nginx

1.Nginx是什么? 是一个高性能的Web服务器和反向代理服务器,也可以作为静态文件的缓存服务器,也能够进行负载均衡。 2.Nginx的作用? 1.反向代理:将多台服务器代理为一台服务器。客户端不了解底层服务端。 2.负载均衡…

eclipse导入Tomcat9源码

环境准备 下载Tomcat源码 https://github.com/apache/tomcat/tagsJDK版本 Tomcat9要求JDK17以上版本 https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.htmlAnt安装 https://ant.apache.org/bindownload.cgi我这里装的是apache-ant-1.10.14版本 …

CLIP模型调用的一段代码及解释

代码示例 from transformers import CLIPProcessor, CLIPModel# 加载预训练的CLIP模型和处理器 model CLIPModel.from_pretrained("openai/clip-vit-base-patch32") processor CLIPProcessor.from_pretrained("openai/clip-vit-base-patch32")# 显示图像…

从0到1,揭秘AI产品经理的高薪秘诀,转型之路与实战资源全解析

前言 随着算法模型的日益精进、计算能力的显著提升以及海量数据的积累,人工智能领域正以前所未有的速度蓬勃发展。 在国家政策的积极推动、社会资本的强劲注入下,人工智能产业正处于技术快速进步的黄金时期,其影响力广泛渗透至教育智能化、…

Day54 代码随想录打卡|二叉树篇---二叉搜索树的最近公共祖先

题目(leecode T235): 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖…

Nginx负载均衡之负载均衡策略

负载均衡技术是将大量的客户端请求通过特定的策略分配到集群中的节点,实现快速响应的应用技术。在应对高并发的应用请求时,单节点的应用服务计算能力有限,无法满足客户端的响应需求,通过负载均衡技术,可以将请求分配到…

DAY 45 企业级虚拟化技术KVM

企业级虚拟化技术KVM 1.kvm是什么 kernel virtualization machine 内核虚拟机 qemu的二次开发 软件全拼 qemu-kvm kvm virtulbox ovm vmware vsphere套件(vmawre-esxi) microsoft hyper-V 2.什么是虚拟化 资源利用 资源隔离 虚拟化管理&…

CleanMyMac X for Mac系统优化垃圾清理软件卸载 工具(小白轻松上手,简单易学)

Mac分享吧 文章目录 效果一、准备工作二、开始安装1、双击运行软件,将其从左侧拖入右侧文件夹中,等待安装完毕2、启动台显示软件图标,表示安装成功 三、运行测试1、打开软件,配置2、授权,允许完全磁盘访问 安装完成&a…

驱动、BSP、HAL三者的区别和联系

目录 引言 一、驱动(Driver) 二、板级支持包(BSP, Board Support Package) 三、硬件抽象层(HAL, Hardware Abstraction Layer) 四、区别与联系 五、总结 引言 驱动(Driver)、板…

正规式理解

正规式(Regular Expression)是一种用于描述、识别字符串集合的模式(尤其是正则语言)的序列表达式。在软件设计中,正规式被广泛用于文本处理、搜索和替换、数据验证等场景。以下是对正规式的基本理解: 1. *…

django filter 数据 Response返回

在Django中,你可以使用Django的filter()方法来筛选查询集(QuerySet),并将结果返回给客户端。以下是一个简单的例子,展示了如何在Django视图中筛选数据,并将结果以JSON的形式返回给客户端。 首先,确保你有一个Django模…

vue3 defineComponent + 渲染函数h + 全局注册​

defineComponent 是 Vue 3 中的一个函数,用于定义一个组件。它是 Vue 3 的组合式 API 的一部分,提供了一种更加灵活和组织化的方式来定义组件。在 Vue 2 中,我们通常使用一个对象来定义组件,而在 Vue 3 中,defineCompo…

赶走异味保持清香,何浩明净味爽身香体膏

夏天来了,大家都想要清清爽爽的出门,但是汗味、狐臭这些小问题都在所难免,总要想办法应对,我目前用的是一款香体膏,它不仅能赶走那些让人尴尬的异味,还能让我们享受一整天的清新自在。 我用的这款叫做何浩明…

解决接入sleuth链路追踪后xxl-job定时任务的日志无日志问题

问题背景 随着业务规模的不断的增大, 系统的复杂度也越来越高, 公司软件架构也进入到了分布式微服务的阶段, 在这样的情况下每一次请求都有可能跨越多个项目, 传统的日志监控方式无法满足调用链路追踪, 这就导致问题定位/诊断服务变得复杂。所以我们引入了sleuth这一…

STM32MP135裸机编程:配置RCC,修改主频到1GHz

0 工具准备 STM32CubeMX v6.11.1 STM32CubeIDE v1.15 STM32CubeProgrammer v2.16.0 STM32MP13xx参考手册 STM32MP13勘误手册 STM32MP135AD数据手册 正点原子stm32MP135开发板 1 确认时钟源 本例使用的时钟源均由外部晶振提供,分别是24MHz的HSE、32.768KHz的LSE。原…

重学java 74.Lombok的使用

少点心气,多点干劲 —— 24.6.18 一、lombok的安装使用 1.作用: 简化javabean开发 2.使用: a.下插件 ->如果是idea2022不用下载了,自带 b.导lombok的jar包 安装教程: http://t.csdnimg.cn/wq9MM c.修改设置 二、lombok的介绍 Lombok通过增加一…

gitlab 身份验证手机号验证没86

处理方案 在浏览器中摁 【F12】打开控制台,选择网络模块,找到手机号列表的请求,请求是 https://gitlab.com/-/countries,右击数据区域点击【替换内容】如下: ![在这里插入图片描述](https://img-blog.csdnimg.cn/di…

【信息学奥赛】CSP-J/S初赛03 计算机网络与编程语言分类

第1节 计算机网络基础 1.1 网络的定义 所谓计算机网络,就是利用通信线路和设备,把分布在不同地理位置上的多台计算机连 接起来。计算机网络是现代通信技术与计算机技术相结合的产物。 网络中计算机与计算机之间的通信依靠协议进行。协议是计算机收、发…

Linux文件与内容查阅、归档压缩

#Linux系统基础 文件与内容查找、归档压缩 find命令搜索文件 grep对文件的内容进行搜索 tar命令进行文件的压缩与解压缩 一、文件的查找 格式实例:find . -name "123.txt"说明find起始目录查找类型查找条件./ 或 .-name“123.txt”在当前目录中查找…

CIC-DDoS2019-Detection

CIC-DDoS2019 对CIC-DDoS2019数据集进行检测,本文提供了如下内容: 数据清洗与合并机器学习模型深度学习模型PCA,t-SNE分析数据,结果可视化 代码地址:[daetz-coder](https://github.com/daetz-coder/CIC-DDoS2019-Detection) 1、数据集加载…