写点什么

微服务的由来

用户头像
卢卡多多
关注
发布于: 4 小时前
微服务的由来

服务

在互联网世界中,我们手机中的 APP 都可以称为微服务, 顾名思义, 为某一个方向,目的提供资源或者技术支撑的服务,尽可能量化的形式,比如我们使用的支付,就是一个微服务。

支付宝为例,它的主要方向是支付,旗下有花呗,借呗,基金,股票,生活缴费等等多个服务共同组成一个 APP,随之时间的迭代,支付宝中的微服务多达上万个,他们都是怎么实现的呢? 本期跟随卢卡的视角,我们一探究竟?

从单体到微服务

微服务的由来:

微服务的提出者是马丁福勒;他在论文中这样描述到,

While there is no precise definition of this architectural style

就目前而言,对于微服务业界并没?有一个统一的、标准?的定义

但通常而言, 微服务架构是一种架?构模式或者说是一种?架构风格,它提倡将?单一应用程序划分成?一组小的服务,每?个服务运行在其独?立的自己的进程中?,服务之间互相协?调、互相配合,为?用户提供最终价值?。服务之间采用轻?量级的通信机制互?相沟通(通常是基?于 HTTP 的 RESTful API)。每个?服务都围绕着具体?业务进行构建,并?且能够被独立地部?署到生产环境、类?生产环境等。另外?,应尽量避免统一?的、集中式的服务?管理机制,对具体?的一个服务而言,应?根据业务上下文,选?择合适的语言、工?具对其进行构建,?可以有一个非常轻量?级的集中式管理来?协调这些服务,可?以使用不同的语言?来编写服务,也可?以使用不同的数据?存储。

本质

微服务是一种架构的模式(风格):

将项目业务划分为一个个小而独立的单体,这个单体保证自己独立的业务功能,能够低耦合--类似于进程-

我总结为: (高内聚,低耦合,实时响应,集群部署,各司其职)

为什么会需要微服务

当单体服务支持不了,日益增长的需求以及用户之后,逐渐的需要分层,量化单体中的单个功能,其中各个功能各司其职,组成一个服务环境。

微服务的优缺点

微服务的优点:

  • 1.高内聚的目标模块方法--专注于一个业务功能;

  • 2.开发简单,易于维护,效率高;

  • 3.无语言的限制实现;低耦合的特性;

  • 4.特殊的:微服务只是业务逻辑的代码,不会与 Html.css 和其他界面组件混合;

  • 5.微服务有自己的数据库,自己存储数据库的能力,也可以是用统一的数据库;

缺点:

  • 1.开发人员的系统的复杂性(处理分布式)

  • 2.多个服务包的增多,运维压力增大;

也就是我们分布式要解决的:

系统环境版本依赖

服务之间的通信响应

数据一致性

性能,并发,稳定性

微服务的技术栈:

目前主流与的是 netfix 公司的 springcloud,和 dubboRpc 和基础 zookeeper 等多个机制组成的,

springCloud 作为分布式微服务的架构,是微服务的一站式解决方案, 也就说一体机和组装机的区别

就目前来说,dubboRPC 通信用的多一点,但是未来肯定是 springcloud 的天下,因为未来所以的服务都会上云,云计算,云服务器,大数据等,都需要大的计算平台去支撑。

卢卡寄语

微服务的本质是将功能量化,高内聚自己的行为,划分模块去通信,真正做到低耦合的去实现多模块的调用, 每个模块有自己独立的环境,数据库,一一区分又互不干预,为总体的用户提供服务。

今天的分享就到这里了, 我是卢卡,记得点赞再走哦

发布于: 4 小时前阅读数: 4
用户头像

卢卡多多

关注

还未添加个人签名 2020.04.12 加入

还未添加个人简介

评论

发布
暂无评论
微服务的由来