博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微服务相关问题(一)
阅读量:4056 次
发布时间:2019-05-25

本文共 682 字,大约阅读时间需要 2 分钟。

一. 微服务要解决的技术问题是什么?

平台采用微服务架构来解决单体应用开发模式面临的缺陷:

  1. 开发效率低:所有的开发在一个项目改代码,递交代码相互等待,代码冲突不断
  2. 代码维护难:代码功能耦合在一起,新人不知道何从下手
  3. 部署不灵活:构建时间长,任何小修改必须重新构建整个项目,这个过程往往很长
  4. 稳定性不高:一个微不足道的小问题,可以导致整个应用挂掉
  5. 扩展性不够:无法满足高并发情况下的业务需求

  

二. 从原理、概括的层次说明微服务是如何解决上述技术问题的?

 

相对于单体架构,微服务的主要特点是组件化、松耦合、自治、去中心化,体现在以下几个方面:

1. 一组小的服务

服务粒度要小,而每个服务是针对一个单一职责的业务能力的封装,专注做好一件事情。

2. 独立部署运行和扩展

每个服务能够独立被部署并运行在一个进程内。这种运行和部署方式能够赋予系统灵活的代码组织方式和发布节奏,使得快速交付和应对变化成为可能。

3. 独立开发和演化

技术选型灵活,不受遗留系统技术约束。合适的业务问题选择合适的技术可以独立演化。服务与服务之间采取与语言无关的API进行集成。相对单体架构,微服务架构是更面向业务创新的一种架构模式。

4. 独立团队和自治

团队对服务的整个生命周期负责,工作在独立的上下文中,自己决策自己治理,而不需要统一的指挥中心。团队和团队之间通过松散的社区部落进行衔接。

我们可以看到整个微服务的思想就如我们现在面对信息爆炸、知识爆炸是一样的:通过解耦我们所做的事情,分而治之以减少不必要的损耗,使得整个复杂的系统和组织能够快速的应对变化。

, 企业数字化建设的全景攻略

转载地址:http://behci.baihongyu.com/

你可能感兴趣的文章
java LinkedList与ArrayList迭代器遍历和for遍历对比
查看>>
drat中构造方法
查看>>
JavaScript的一些基础-数据类型
查看>>
ReactNative使用Redux例子
查看>>
Promise的基本使用
查看>>
coursesa课程 Python 3 programming 统计文件有多少单词
查看>>
course_2_assessment_6
查看>>
coursesa课程 Python 3 programming course_2_assessment_7 多参数函数练习题
查看>>
coursesa课程 Python 3 programming course_2_assessment_8 sorted练习题
查看>>
在unity中建立最小的shader(Minimal Shader)
查看>>
1.3 Debugging of Shaders (调试着色器)
查看>>
关于phpcms中模块_tag.class.php中的pc_tag()方法的含义
查看>>
linux安装usb wifi接收器
查看>>
多线程使用随机函数需要注意的一点
查看>>
getpeername,getsockname
查看>>
Visual Studio 2010:C++0x新特性
查看>>
drwtsn32.exe和adplus.vbs进行dump文件抓取
查看>>
cppcheck c++静态代码检查
查看>>
在C++中使用Lua
查看>>
socket编程中select的使用
查看>>