微服务

微服务

使用一套小服务来开发单个应用的方式,每个服务运行在独立的进程里,一般采用轻量级的通讯机制互联,并且它们可以通过自动化的方式部署。

特征

  • 单一职责
  • 轻量级通信
  • 隔离性
  • 有自己的数据
  • 技术多样性

背景

  • 互联网行业的快速发展
  • 敏捷开发,精益方法深入人心
  • 容器技术的成熟

场景

假定业务场景

  • 一个在线教育的网站部分功能
  • 用户可以登录注册,获取用户信息
  • 有发送邮件发送短信的功能
  • 可以查看课程列表和对课程有基本CRUD

优势

  • 独立性
  • 敏捷性
  • 技术栈灵活
  • 高效灵活

劣势

  • 额外的工作 (服务拆分)DDD
  • 数据一致性
  • 沟通成本
  • 维护成本

微服务架构引入的问题及解决方案

服务间通讯

通讯模式
一对一一对多
同步请求响应模式——
异步通知/请求异步响应模式发布订阅/发布异步响应
通讯协议
  • Rest API
  • RPC
  • MQ
RPC框架
参考内容
  • I/O、线程调度模型
  • 序列化方式
  • 多语言选择
  • 服务治理
类别
  1. Dubbo
    Dubbo
  2. Motan

Motan
3. Thrift
Thrift
4. GRPC

GRPC

区别

在这里插入图片描述

服务间如何发现彼此

  1. 客户端发现
    在这里插入图片描述
    2.服务端发现
    在这里插入图片描述

服务怎么部署/更新/扩容

  1. Mesos

  2. Docker Swarm

  3. Kubernetes

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值