云服务开发平台的架构及优势分析

2019-03-18 09:42:50分类:云服务端开发12554

  作为一个互联网公司或提供互联网服务的公司,其核心的技术资产就是云端平台和云端平台上的服务。

  我们通常所说的云服务或云平台广义上是一个概念,但其实内部是两个部分。

  1.支撑云服务运行的硬件和软件系统环境(云架构平台,简称云平台);

  2.实现业务逻辑,支持客户应用,对外提供服务的应用服务平台(云服务平台,简称云服务)。
 

云服务开发平台
 

  一、云服务——选择

  云服务的核心重点在于架构的设计。

  软件架构是一个包含各种组件的软件系统结构,这些组件包括但不限于:接口服务,应用服务,数据库服务,缓存服务,消息服务,日志服务,存储服务,网络及通讯服务等等, 它们彼此存在关联或和平台环境存在关联。系统架构设计的目标和目的就是协调和解决这些组件的边界相关点。

  当前,我们的软件服务已经进入云计算时代,一个系统所服务的对象已经不再限于单个项目或企业,也不再限于单一行业或同类用户,甚至服务提供者都无法预知消费服务的对象。

  在这样的服务消费时代背景下,一个需要全方位,多角度,多维度提供服务的架构方案已成为必然,微服务架构也自然应运而生。

  微服务架构区别于传统架构的重要特点:

  ·模块以服务划分而非项目;

  ·模块独立部署且相互隔离;

  ·模块通讯用轻量级API调用。

  时代必然,我们的云服务选择的是微服务架构。
 

云服务开发平台
 

  二、云服务——解读

  1.服务拆分

  服务按业务拆分这是水平维度的拆分,服务按技术实现前后端分离这是垂直维度的拆分,水平垂直两个维度的拆分把服务分成小块状,这是微服务中"微"思想的体现。

  2.服务独立

  服务独立,需要相互调用提供完整业务逻辑,我需要其它服务,其它服务也需要我,我为人人,人人为我,这是微服务中"服务"思想的体现。

  3.服务调用

  HTTP(S)+JSON采用轻量级通讯协议和简单数据结构:服务间不再需要关心对方模型和实现,仅通过事先约定好的接口来进行数据流转即可,这是微服务中"解耦"思想的体现。

  4.服务部署

  正因为服务独立,所以每个服务都可以单独部署,每个服务都可以独立扩展,也可以独立建立负载。

  综上所述,微服务可以体现出以下几点优势:

  ·开发效率更高;

  ·沟通成本更低;

  ·响应速度更快;

  ·迭代周期更短。

  解读:

  每个微服务结构独立,功能专一,规模很小,功能明确,能够被团队快速开发和迭代;

  每个微服务之间是松耦合的,接口确定后无需关注实现,不会产歧义,减少协调沟通成本;

  每个微服务都可以独立部署,快速实现新功能、新需求而不会对整个系统产生影响。
 

云服务开发平台
 

  三、Pivotal与微服务

  很长一段时间以来,Pivotal都是云原生、微服务背后的巨人,这些概念被认知程度已经高过Pivotal自身的品牌。比如微服务火爆后被带热的Spring系列技术,但是很多人并不知道Pivotal才是Spring技术的拥有者。

  在Pivotal成立之前,Cloud Foundry一直由VMware在推动,拥有大量开源用户。在Pivotal成立之后,正式发布Pivotal Cloud Foundry (PCF) 1.0版本。

  从2016年开始,Pivotal开始支持Docker在企业环境中的运行;也支持把Spring Cloud引入PCF平台,以实现微服务化的应用。

  目前Pivotal拥有Spring Boot、Spring Cloud和Spring Cloud Data Flow,用以构建微服务、治理微服务、连接微服务数据。

上一篇:下一篇: