什么是微服务,什么是分布式

什么是微服务,什么是分布式

本文写于 2020 年 12 月 24 日

微服务

2014 年由 James Lewis 和 Martin Fowler 提出了完整的微服务概念。

微服务是一种 「架构风格」,该风格在开发应用时,将一个应用拆分成为一组小型服务。这些服务应该要围绕着业务功能进行拆分。

每一个服务都拥有自己的进程,可以独立的部署、升级,并且应该拥有自动化部署机制(太多服务了,部署起来会很麻烦)。

服务之间应该是去中心化的,它们之间通过轻量的协议进行交互,通常使用 HTTP

在不同的服务上,可以使用不同的语言、运用不同的储存技术。比如我们编写一个购物网站,商品管理后台用 PHP 在一个服务器写、用户管理后台使用 Node.js 在另一个服务器编写、商品购买使用 Java 在第三个服务器编写……

而这就出现「分布式」。

分布式

不同的服务在不同的服务器上用着不同的语言编写,这些服务组成的就是分布式系统。

例如 A 服务,部署在了北京的 10 台服务器上;B 服务部署在了武汉的 5 台机器上;C 服务部署在了广州的 3 台机器上。

(完)

posted @ 2020-12-24 20:28  徐航宇  阅读(532)  评论(0编辑  收藏  举报