华为鸿蒙系统HarmonyOS学习之十五:总线技术的概念学习

本文主要是介绍华为鸿蒙系统HarmonyOS学习之十五:总线技术的概念学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

华为鸿蒙系统HarmonyOS学习之十五:总线技术概念学习

    提起总线技术,了解计算机原理的人,都会马上想起ISA总线、LOCAL BUS 总线、PCI总线等一系列的概念,在PC的286、386的时代,那时候提起这些概念的人,牛哄哄的程度不亚于现在动不动就是区块链、大数据、AI智能化的小鲜肉。现在再提起总线技术,已经远远不是PC时代的概念,已经在服务(webservice)、网络技术层面上,赋予新的内涵。

一、计算机总线

    总线英文名叫Bus,你猜的没错也是公共汽车的意思。总线是一个非常广泛的概念,在传统计算机硬件体系中应用的非常广泛。

     总线是一种内部结构,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。

计算机硬件总线结构

在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。

传统总线的典型特征:

  • 即插即用

  • 高带宽

  • 低时延

  • 高可靠

  • 标准

二、企业服务总线 ESB

企业级应用架构的发展经历了以下几个阶段:

  1. 独立应用系统
  2. EAI 阶段
  3. SOA 阶段

独立应用阶段

20 世纪 60 到 70 年代,企业应用处于独立应用系统阶段,当时的企业应用是一种用来替代重复性劳动的简单设计,其目的是用计算机代替孤立的,体力性质的工作环节,将相关联的企业信息或数据管理起来。这些系统大部分是独立的系统——有独立的数据库、应用服务器、用户界面。因此有时候这类应用也叫“竖井型”的应用。

但是,随着业务和信息的不断扩展,独立应用系统渐渐不能满足企业对 IT 的需求,表现在大量的信息冗余,因为在建立一个新的应用的时候需要重新建立一套数据库;功能的重新设计,相似的功能存在于多个系统中;例如,客户信息在一个公司中可能有多个拷贝分别存在于多个数据库中,不同时期建立的应用系统所使用的技术也会不同。对于获取客户资料这样的功能,必然存在于多个系统中,而且在不同的系统中其实现方式可能是 Java/J2EE、Delphi、C/C++。

EAI 阶段

20 世纪 80 到 90 年代,一些公司或集成商意识到应用集成的价值和必要性。EAI 是一种将多个不同平台、用不同方案建立的异构的应用集成的一种技术和方法。它的目标包括以下几个方面:各个分离的系统间的相互通讯,消除信息孤岛,实现信息的共享。从功能的角度来看,EAI 包括信息接收、转换、翻译、路由、传播和业务流程管理。从架构上看有两种方式:Hub/Spoke 方式和 Bus 方式。

图 1 所示的 Hub/Spoke 结构使用一个中心代理(Hub)和多个适配器(Spoke)将 Hub 和应用连接起来。适配器负责将应用的数据格式转换成 Hub 可以理解的格式,Hub 将数据再转换成目标系统可以理解的格式,并执行消息的路由。Hub/Spoke 方式的弊端在于只有一个代理中心,当连接的应用种类增加或者消息量增大时,代理中心的性能将成为整个系统的瓶颈,在可扩展性方面也存在着一定的问题。


图 1 . Hub/Spoke 结构的 EAI 集成 
 

图 2 所示的 Bus 结构使用一个中心总线,应用程序通过 Adapter 将消息发送给总线,总线负责消息的路由,接受方的应用程序也有自己的 Adapter 来转换接受到的消息。Bus 结构和 Hub/Spoke 结构的最大区别在于在 Bus 结构中,Adapter 位于应用程序中,而 Hub/Spoke 结构中,Adapter 由 Hub 来统一管理。这样在 Bus 结构中,加入一个新的应用变得很简单,可扩展性得到了很大的提高,但是应用程序方的负担加重了。


图 2. Bus 结构的 EAI 集成 
 

SOA 阶段

SOA 将应用资源看成一个个独立的,自包含并良好定义的服务,通过这些服务的组装,编排可以产生新的应用。每一个服务可以完成一个独立业务功能,并且不依赖于业务上下文或者其他服务的状态。服务的定义是标准的且被广泛支持的,比如 Web Service。在 SOA 的架构中,人们都用标准的方式来封装自己的服务,使得任何一个客户端程序都可以容易的和后台系统实施连接。而 ESB 是 SOA 架构中的一个核心基石,在几乎所有的 SOA 架构中,都将 ESB 放在核心的位置。

ESB 产品些特征:

  1. 连接性

    ESB 必须提供一种支持服务交互的桥梁,它必须支持多协议 (protocol) 之间的连接。不仅要提供对消息和面向事件的中间件的支持,还要提供和现有 EAI 技术的连接。连接性是 ESB 不可缺少的特征之一。

  2. 服务交互

    服务交互可以理解为 ESB 的一个目的之一,ESB 作为 SOA 架构的核心,必然要支持服务的交互,要在服务的请求者和提供者架起一个坚实的桥梁,让服务的请求者和提供者只需要关心各自的业务逻辑,而不需要在发布和消费服务的环节花很大力气。服务交互也是 ESB 的必备特征。

  3. 集成

    集成的概念是对于系统而言的,ESB 不仅要能集成那些很容易封装服务的系统,也要集成不能方便地封装服务的系统,例如 SAP, ERP, CRM, Siebel 等 EAI 系统、遗留系统。集成也是 ESB 的核心特征之一。

  4. 消息处理

    在集成的过程中,必须要面对的是消息处理,在不同的应用系统中,消息的描述格式是不一样的。在集成环境中,必须要提供一种统一的格式来处理系统间的交互。

  5. 管理

    对于一个具有 ESB 特征的产品,管理也是一个重要的方面。例如,当一个服务从一个地址切换到另一个地址,在结构等不发生任何改变的时候,ESB 产品应该提供一个方便的途径适应这种改变。

  6. QoS

    对于服务交互来说,QoS 也是一个重要的特征,比如针对不同的服务请求者提供不同质量的服务响应。有些服务的请求需要在事务中完成,有些服务的交互需要保证其可靠性。一个 ESB 产品应该提供给开发者定义 QoS 的接口。

  7. 安全

    安全的必要性不言而喻,系统和系统之间的交互必然需要认证,授权,加密,签名等安全性。一个优秀的 ESB 产品应该提供可靠的,可灵活配置的安全支持。

三、分布式软总线

分布式软总线技术是基于华为多年的通信技术积累,参考计算机硬件总线,在1+8+N设备间搭建一条“无形”的总线,具备自发现、自组网、高带宽低时延的特点。

简单解释一下什么是1+8+N: 

1指的是手机 

8代表车机、音箱、耳机、手表/手环、平板、大屏、PC、AR/VR 

N泛指其他IOT设备

鸿蒙OS分布式软总线

全场景设备间可以基于软总线完成设备虚拟化、跨设备服务调用、多屏协同、文件分享等分布式业务。

分布式软总线的典型特征:

  • 自动发现/即连即用

  • 高带宽

  • 低时延

  • 高可靠

  • 开放/标准

从上面三种总线技术层面上,我们可以看出有以下的几个方面的变化:

  • 不再局限于线路板层面的硬件技术,不再单纯依赖线路板技术、网络、无线传输媒介也是覆盖的范围。
  • 赋予网络服务的概念层面概念,涉及硬件、软件等领域。
  • 不再局限单一设备上,可以跨平台、跨区域、跨网络。

 

 

    

这篇关于华为鸿蒙系统HarmonyOS学习之十五:总线技术的概念学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/230852

相关文章

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资

你的华为手机升级了吗? 鸿蒙NEXT多连推5.0.123版本变化颇多

《你的华为手机升级了吗?鸿蒙NEXT多连推5.0.123版本变化颇多》现在的手机系统更新可不仅仅是修修补补那么简单了,华为手机的鸿蒙系统最近可是动作频频,给用户们带来了不少惊喜... 为了让用户的使用体验变得很好,华为手机不仅发布了一系列给力的新机,还在操作系统方面进行了疯狂的发力。尤其是近期,不仅鸿蒙O