架构杂谈《十》

常用开发模式 一、瀑布式开发   瀑布式开发是在1970年提出的软件开发模型,是一种较老的计算机软件开发模式,也是典型的预见性的开发模式,在瀑布式开发中,开发严格遵循预先计划的需求分析、设计、编码、集成、测试、维护的步骤进行,步骤的成果作为衡量进度的方法。瀑布式开发最早强调系统开发应有完整的周...

2019-08-15 20:07:52

阅读数 16

评论数 0

架构杂谈《九》

微服务与轻量级通信机制   微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间胡亮协调、互相配合,为用户提供最终价值。在微服务架构中,服务与服务之间通信时,通常是通过轻量级的通信机制,实现彼此间的互通互联、互相协作。所谓轻量级通信机制,通常是指与语言无关、与平台无关的这类...

2019-08-05 19:54:33

阅读数 13

评论数 0

架构杂谈《八》

Docker 架构 一、Docker 引擎的三大组件   1)Docker 后台服务(Docker Daemon):是长时间运行在后台的守护进程,是Docker的核心服务,可以通过命令dockerd与它进行交互通信。   2)REST 接口(REST API):程序可以通过REST的接口来访...

2019-07-29 17:17:28

阅读数 41

评论数 0

架构杂谈《七》

容器VS虚拟机 一、什么是虚拟机   虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。   虚拟系统通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全一样的功能,进入虚拟系统后,所有操作都是在这个全新...

2019-07-25 11:56:10

阅读数 39

评论数 0

架构杂谈《六》

超时处理模式   在服务化或者微服务架构里,传统的整体应用拆分成多个职责单一的微服务,微服务之间通过某种网络通信协议互相通信和交互,完成特定的功能,然而由于网络通信的不稳定,在设计系统时必须考虑到对网络通信的容错,特别是对调用超时问题的处理。 一、微服务的交互模式   1、同步调用模式  ...

2019-07-22 15:18:51

阅读数 3396

评论数 0

架构杂谈《五》

保证最终一致性的模式   在大规模、高并发服务化系统中,一个功能被拆分成多个具有功能单一的子功能,一个流程会有多个系统的多个单一功能的服务组合实现,如果使用两阶段提交协议和三阶段提交协议,确实能解决系统间的一致性问题。其实现也比较复杂、成本比较高,最重要的是性能不够好,相比来看,TCC协议简单、...

2019-07-19 12:36:37

阅读数 31

评论数 0

架构杂谈《四》

分布式一致性协议 一、引言   在分布式系统中,为了保证数据的高可用,通常会将数据保留多个副本(replica),这些个副本会放在不同的物理机上,为了对用户提供正确的数据,我们需要保证这些放在不同物理机上的副本是一致的。为了解决这种分布式一致性问题,提出了很多经典的协议和算法,比较著名的是 两...

2019-07-17 08:55:25

阅读数 4711

评论数 0

架构杂谈《三》

一致性问题   前面的《架构杂谈一》和《架构杂谈二》 杂谈了从服务化到微服务架构的演进,并肯定了服务化和微服务架构是一脉相承的。微服务在服务化架构的基础上,对服务化的细节和方案进行了优化和细化,重点突出了无中心化管理的微服务架构,通过对服务进行有效的拆分来实现敏捷开发和自动化部署,并在海量用户的...

2019-07-17 08:54:33

阅读数 2224

评论数 1

架构杂谈《二》

服务化到微服务 1、微服务的产生 随着互联网企业的不断发展,海量用户发起的大规模、高并发请求是企业不得不面对的,上一篇 架构杂谈《一》杂谈的SOA服务化系统能够分解任务,让每个服务更简单、职责单一、更易于扩展。但无论是Web Service 还是ESB,都有时代遗留下的问题。 Web Ser...

2019-07-13 11:09:48

阅读数 39

评论数 0

架构杂谈《一》

从传统单体架构到服务化架构的发展历程 典型的单体架构分为三个层级,Web层、业务逻辑层和数据存储层,每个层的指责分别如下: Web 层:负责与用户交互或者对外提供接口业务逻辑层:为了实现业务逻辑而设计的流程处理模块数据存储层:将业务逻辑层处理的结果持久化 将不同的模块化组件聚合后运行在...

2019-07-13 11:09:06

阅读数 681

评论数 0

提示
确定要删除当前文章?
取消 删除