订阅业界RSS CSDN首页> 业界

独家系列:让我们遇见未来——为何在云平台中使用REST作为架构设计风格

发表于2016-05-12 14:51| 次阅读| 来源EAII企业架构创新研究院| 0 条评论| 作者宋潇男

摘要:本文为普元软件产品部云计算架构师(宋潇男)在普元云计算架构设计群的微课堂分享,转载需与本号联系,欢迎关注EAII(微信公众号:eaworld)。 如需加入云计算架构设计群请直接回复此公众号:加群+姓名+公司+职位+微信号。 在我们设计新一代企业云平台的时候,需要集成大量的、依赖不同开源项目的...

本文为普元软件产品部云计算架构师(宋潇男)在普元云计算架构设计群的微课堂分享,转载需与本号联系,欢迎关注EAII(微信公众号:eaworld)。

如需加入云计算架构设计群请直接回复此公众号:“加群+姓名+公司+职位+微信号”。

在我们设计新一代企业云平台的时候,需要集成大量的、依赖不同开源项目的、来自不同业务领域、不同开发团队、甚至外部合作伙伴的服务,那么如何对这些服务做统一抽象呢?

我们的方案就是:一切皆为资源,灵感来源于Unix的理念——“一切皆为文件”。

Unix里,不光文件、目录、设备、socket这些东西都是文件,连api也在逐渐地文件化。甚至是关闭一个cpu核心这种很底层的操作,也可以通过类似文本编辑的操作来完成。

这种一致性的设计,降低了集成的整体复杂度,方便了微服务之间的集成以及上层业务的开发。Unix的哲学是至下而上,确实很好地对业务做了支撑,不过业务本身好不好,还要至上而下的智慧。

但是,只有一致性的设计还不够,这其中还要做到最小化的约束,比如对开发语言和工具链的约束,给开发人员尽量大的自由度。

就像是制造业的集成方式,才不会管你的产品是用什么工具、哪种生产线生产出来的。

满足这些要求的,就是REST设计风格。

超文本驱动,人和各种工具,都容易识别。接口统一为CRUD操作,避免了自定义接口操作带来的交互复杂性,另外还有可寻址、可外部负载均衡等好处。

REST是M2M的最佳集成方式,也是我们新一代数字化企业云平台的集成方式。

我们使用REST风格带来的优势如下:

最大的好处是工具链非常丰富,拿个浏览器装个插件也能玩,同时也遇到了一些挑战。

 

 

比如,有些开发人员没有从架构全局考虑,对把自己熟悉的技术实践转化为REST风格有所抵触。有些开发人员认为REST的CRUD操作太简单,无法描述复杂的企业业务。

 

有时候,我们会陷入格式细节的争论。比如,REST API的版本该如何描述,是http://server:port/api/v2/customers/123 还是 http://server:port/api/customer/123?version=2,或者放到Header里。一定还会有更多的挑战,需要在实践中慢慢摸索。

 

 

这是我们新一代数字化企业云平台的整体视图,微服务之间全部使用REST API连接。

(好了,先到这里,给大家留些时间泡杯JAVA~)

如需加入EAII研究院成为会员请点击此公众号菜单:EAII-在线注册或添加微信号:elaineyuan928。

关于作者:

宋潇男

EAII-企业架构创新研究院 专家委员

现任普元云计算架构师,曾任华为云计算产品技术总监。曾负责国家电网第一代云资源管理平台以及中国银联基于OpenStack的金融云的技术方案、架构设计和技术原型工作。

关于EAII

EAII(Enterprise Architecture Innovation Institute)企业架构创新研究院,是专注于企业架构与业务创新领域的研究机构,致力于金融、电信、能源与政务等行业领域的企业软件架构优化设计与 创新研究,以及分布式计算、服务构件技术、可视化技术、业务流程管理、内存计算、企业移动计算、数据治理等领域的技术研究。

0
0