我是靠谱客的博主 虚心早晨,最近开发中收集的这篇文章主要介绍浅谈微服务架构谈到微服务,不得不提两个人对微服务的定义:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

谈到微服务,不得不提两个人对微服务的定义:

 

丁·福勒的定义(个人比较认同马丁.福勒的定义,还是比较详细的):

一组小的服务(主张把单块应用拆分成一个个小的服务 例如:电商应用拆分成登陆,购物车,订单等服务)

那么多小才算一组小的服务?没有特别的定义,只要开发人员觉得这块服务是一组小的服务,就可以。

 

独立的进程:

每个服务运行在独立的进程。比如应用部署在tomcat中,tomcat作为一个进程运行。 现在的容器本身也是一种进程。

 

轻量级的通信机制

服务之间的通信比较轻量,快捷。

基于业务能力

将服务基于业务进行细分

独立部署

每个服务能独立部署,测试、和开发

无集中式管理

每个服务都是各个服务部门管理,无需集中管理多个服务。

 

 

Adrian Cockcroft的定义:

1.松耦合

每个服务的依赖性不强,每个服务都能独立开发、测试,部署。

2.服务面向架构

微服务也是SOA的一种架构,只是进行了细分。

3.局部状态:

每个团队可以维护自己的数据。

 

 

思考:

微服务可以独立部署,给业务带来了什么好处

提高应用的可扩展性,按需分配资源。偶同事保证各个服务之间的环境隔离,保证故障的影响最小、原因排查快、修复影响小。 同时方便了各服务的开发、维护、和部署。

微服务各个服务都有独立的数据源,带来什么样的挑战

拆分前的下单流程,减扣库存,减扣积分,锁定优惠券,保存订单等操作属于同一个事务;拆分后属于不同的服务,需要额外的流程保证一致性。

 

最后

以上就是虚心早晨为你收集整理的浅谈微服务架构谈到微服务,不得不提两个人对微服务的定义:的全部内容,希望文章能够帮你解决浅谈微服务架构谈到微服务,不得不提两个人对微服务的定义:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部