一、xPort是什么?

智能代理,也叫Side Car,既是新一代分布式微服务框架-Service Mesh服务网格架构的基石构件,也是Service Mesh数据平面和控制平面的核心管理组件。

ISTO的Service Mesh通用模型

xPort是数字动能的Service Mesh核心组件“智能代理”(也叫Side Car)。xPort以分布式通讯框架xRPC为主要通讯协议,它主要负责Service Mesh服务网格节点间的数据平台与控制平面的管理。服务网格-Service Mesh被视为下一代基于分布式思路的微服务架构,它提出了利用全新的分布式、轻量级设计的Sidecar(以下称智能代理)部署模式替代原来庞大的层级式、堆叠式的集中服务框架。应用服务间的数据通讯将由智能代理接管,不再需要关注通信和控制细节,信息可在服务网格间高速通讯。而对于系统级别的功能调用,应用服务单元也无需再去关心如何调度,完全由智能代理负责数据平台和控制平面的协调。这种改进将把业务代码和技术实现进一步解耦,技术架构的变动对业务代码的影响也进一步减少。利用智能代理进行应用服务间信息通讯的方式是Service mesh服务网格设计的核心思路,数字动能提出的Direct Exchange Mesh服务网格架构对比ISTO经典Service Mesh模型更轻量级,主要针对金融万博app怎么下载的大数据传输、复杂计算和高速传输需求进行了场景针对设计。其智能代理xPort完全自主研发,采用大量创新设计。

数字动能的Service Mesh 改进模型

二、智能代理xPort v1.0有什么特点?

1、智能代理通讯不再经过通用模型的控制面板而是直接数据交换模式

Service Mesh通用模型中,智能节点(Side Car)区分了数据平面和控制平面。但在面向应用服务,以松耦合和高速通讯为首要目标的Direct Exchange Mesh服务网格设计中,数字动能利用xPort智能代理大胆把控制平面的部分功能下沉至智能代理内部,同时把硬件资源的调度权交回给IaaS层,让整个分布式架构设计更轻量级,以智能节点直接点对点方式进行数据交换(Direct Exchange Model)。在原Service Mesh通用模型中,应用服务的微服务化看似松耦合,实际上由于控制面板的集中通讯设计,反而加重了网络间节点传输的压力。数字动能的xPort智能代理大胆取舍了原来控制面板的功能,改为智能代理间完全点对点直接通讯,从而避免过多的节点需要同时经过控制平面通讯所产生的原生架构性能瓶颈。

2、智能代理xPort允许应用(服务)通过进程内调用的方式实现高速点对点通讯

普通Service Mesh的SideCar只是做了消息转发,xPort在满足该功能的前提下,可以更好的满足金融业务(如投研业务)间大量数据和传输。智能代理xPort直接把应用服务加载到自身的进程内, 这样应用服务和智能代理xPort的通讯无需再通过网络避免了频繁通讯产生的网络高负载,而是直接通过内存交互。如下图,应用服务A和应用服务B都是加载在xPortA的,通讯流程为:应用服务A -> xPortA -> 应用服务B。即使两个应用服务加载在不同的xPort,也只需要发起一次网络调用即可。另外,不同于原来一对一的智能代理->应用服务的单一结构,xPort允许多个应用服务同时在进程内加载。如图,应用服务A,B,C可同时通过加载在xPortA中。

利用xPort实现进程内多应用服务调用

3、智能代理xPort内置服务发现功能,降低对注册发现服务频繁访问的网络消耗

通用Service Mesh服务网格模型对服务注册中心的依赖度很高,应用服务通过智能代理必须和服务注册中心保持连接,以确保服务注册中心能观测到各个节点的状态变化。这种方式在大规模的分布式应用中容易产生单点问题,随着应用服务节点的数量增加,服务注册中心的压力会随之变大,一旦服务注册中心发生故障,所有的应用服务都将被挂起无法工作。xPort为避免此问题,在智能代理中内置了服务发现功能。当应用服务把消息传递给xPort后,智能代理会先查询内置的本地路由表,查看是否有目标应用服务的地址,如果没有才会从服务注册中心获取目标服务(应用)的地址。对于首次应用服务注册,只需要通过智能代理向服务注册中心做一次性注册,后面的所有调用或应用服务目标的状态无需再通过服务注册中心。如上图的服务(应用)A发送消息给应用服务D,当xPortA和xPortB通过服务注册中心建立连接后, xPortA和xPortB会开始自动相互各自的应用服务信息,不再需要通过服务注册中心。

4、xPort具有带消息队列的点对点通讯功能

在通用Service Mesh架构中,应用服务和智能代理、智能代理自身相互之间均是点对点通讯。点对点通讯在获得高性能的同时,却要求被调用方必须保持在线。在分布式场景中,应用服务可能会出现短时间(或极短时间)的通讯中断现象。xPort智能代理将会允许这些临时中断现象的发生,并将其视为信息在节点间传输的有效生命周期。xPort通过改进并融入ZeroMQ的技术达到此目的。应用服务把消息传给xPort之后,会在本地创建该消息目标应用服务的队列,然后再由该应用服务把消息发送给目标应用服务;如果目标应用服务不在线,那么在消息的生命周期内会存放在这个队列里面,待目标应用服务上线,该队列会继续完成消息传输。因此,智能代理间的消息传输只要在其生命周期内被处理即可,并不要求各个智能代理节点必须立即响应。与原来传统点对点的即时信息通讯方式不一样,xPort在与应用服务和智能代理间的相互调用,并不认为只要对方不在线,消息传输就是失败的,而是允许消息只要还在生命周期内,都可以队列方式进入等待响应状态。在点对点通讯效率提升方面,xPort同时借鉴了RabbitMQ一个连接可以创建多个通道(channel)的思路,大大减少了xPort之间的连接数量。xPort内置的节点智能连接算法,可让xPort智能代理会根据服务节点间线路情况自动增加连接,在空闲时自动降低连接数量。

5、xPort同时支持多线程编程模型和Actor编程模型

通用Service Mesh的架构中,智能代理(Side Car)只作为消息代理所用,xPort在实现消息代理功能的同时,允许应用服务加载到自身进程,使其具备对应用服务的调度功能。为满足高并发的使用场景,xPort进一步提供了线程池和Actor两种并发模型。线程池并发模型的多个线程间交互是通过共享内存的方式进行的,多个线程对共享进行操作,达到同步消息的目的。这种方式极大提升响应速度,降低延时,但多线程编程模型难以保证应用运行的正确性。该问题需要用到锁等机制来解决,这将会影响性能,并且容易导致死锁等问题。因此,xPort同时提供了Actor并发模型。Actor不是通过共享内存来通信,而是通过通信来共享内存的。Actor的状态由自身来进行维护,其他线程不能直接对Actor发起调用,而是要把调用的消息发送给Actor,由Actor来执行操作,这样就可以保证Actor内部的数据只有由它自身进行改变。这种编程模型大大的降低多线程编程的复杂度,容易编写出高并发的应用程序。xPort的使用对象可以根据业务选择不同的编程模型即可。

三、xPort可以解决什么问题?

xPort作为数字动能分布式微服务框架DX Mesh的核心组件,主要解决各个应用服务间的数据、通讯和控制问题,为多业务场景设计,复杂系统构建和中台业务架构方案提供了全新的实现思路。利用智能代理xPort实现的业务间互联互通,将对大型业务系统构建和拥有复杂业务逻辑的核心系统研发带来革命性的改变:

1、业务架构简单化 – 复杂业务结构通过xPort接入方式进行解耦,快速实现应用模块化。

2、以组织形态看待业务,而不是进行庞大臃肿的大架构设计。

3、通过智能代理,业务间不再考虑统一设计,而是分立设计,甚至进行动态业务逻辑设计,彼此相互联系又各自独立。

4、智能代理所形成的分布式业务群可实现快速部署,快速迁移。

5、通过智能代理,可实现异构开发语言间的相互通讯。

6、系统从集中式设计变成网络化,节点化的分布式设计,可无限延申业务体系。

7、智能代理的分布式接入架构对传统的PaaS集中接入式架构发起了挑战,但成本更低,新业务接入迅速,旧业务系统无需推倒重来。

精选 导读

iPhone 11 Pro/11 Pro Max改进 新三摄系统+A13仿生芯片

苹果今天宣布新的iPhone 11 Pro和iPhone 11 Pro Max有几项改进,包括新的三摄相机系统,A13仿生芯片等。苹果没有在舞台上突出演示,但需要

发布时间: 2019-09-11 09:41
科技   2019-09-11

苹果自动驾驶汽车曝光 考虑安装智能滑动门

总是活在传说和苹果战略剖析文章里的自动驾驶汽车,终于被曝光在了美国网友强大的眼力和镜头下。这难道是为愈加无聊的苹果手机发布会提升关

发布时间: 2019-09-11 09:29
万博app怎么下载   2019-09-11

Hubii将发布Nahmii 由微软Azure驱动

Nahmii是一个新的扩展解决方案,专注于让以太坊为企业级应用开发做好准备,将在由科技巨头微软与区块链开发公司hubii共同举办的区块链活动

发布时间: 2019-09-11 08:29
区块链   2019-09-11

美国48个州对谷歌发起反垄断调查 谷歌网页被指有虚假新闻

美国得克萨斯州总检察长肯·帕克斯顿9日宣布,来自美国48个州、华盛顿哥伦比亚特区以及海外属地波多黎各的50名总检察长,正式对美国互联网科

发布时间: 2019-09-11 08:24
消费   2019-09-11

ChainX使用Substrate开源区块链框架 可与X-BTC互换资产

本文是 PolkaWorld Hackathon 战略合作方专访 系列的第三篇,这一次我们采访了战略合作方之一的 ChainX CMO Kristen。ChainX 被公认为是波卡生

发布时间: 2019-09-10 17:43
八大胜官网   2019-09-10

巴博斯G V12 900发布 V12发动机+3.8秒加速100km/h

根据此前消息,全新奔驰G级可能不会再提供搭载V12的G65版本,这对于那些手握巨款、追求极致的买家来说,是一个不好的消息。而作为奔驰御用

发布时间: 2019-09-10 17:25
学院   2019-09-10

技嘉Aero 17游戏本上架 i7-9750H+16GB内存+5ms响应

9月8日消息技嘉Aero 17游戏本已经正式上架,i7-9750H+16GB内存+GTX 1660Ti版本售价14499元。配置方面,Aero 17采用了英特尔i7-9750H处理器

发布时间: 2019-09-10 16:09
管理   2019-09-10

发布时间: 1970-01-01 08:00
管理   1970-01-01

松下发布三款新品 CF-SV8笔记本可选购6300mAh/10.8V电池

在万博app怎么下载应用领域松下笔记本电脑是强大的存在,尤其是TOUGHBOOK。在今天松下更新TOUGHBOOK产品线,推出了首款带有通讯功能5英寸手持终端FZ-T1

发布时间: 2019-09-10 10:36
消费   2019-09-10

康佳集团获得两项金奖 电视V1荣获视听体验金奖

9月6日,享誉全球的2019柏林国际电子消费品展览会(IFA)在德国柏林正式拉开帷幕。作为全球最大的消费类电子产品展览会之一,本次展会聚集了

发布时间: 2019-09-10 10:02
管理   2019-09-10

每日热点

热门TAG

more