微服务简单介绍

Preface

微服务是一种分布式系统解决方案,通过它们的生命周期的相互合作,促进了细粒度服务的使用。因为微服务最初是最为商业领域的模型使用,所以避免了一些传统阶梯状的结构,过去的十年时间里,微服务也集成并融合了新技术和科技,使得可以帮助它们避免许多面向服务架构实现的陷阱

什么是微服务?

关键点

  • 简化了实现,复杂了数据处理
  • 粒度划分需要一定的花费
  • 最好的情况就是可以通过一次服务间调用来得到所有想要的信
  • 在Microservice的各个子服务之间进行服务间调用效率是十分低下的
  • 为了达到该目标,我们需要尽量使用户访问同一个子服务实例,并且在该用户的会话中缓存从公共服务中所得到的信息。

微服务架构中的核心部分

  • 小,且专注于做一件事情
  • 独立的进程中
  • 轻量级的通信机制
  • 松耦合、独立部署

优点

  1. 单个服务很容易开发、理解和维护
  2. 每个服务都可用不同的技术来开发
  3. 每个服务可以单独部署
  4. 每个服务独立扩展

缺点

  1. 服务不是越小越好
  2. 分布式应用带来了复杂性
  3. 分区的数据库结构
  4. 给测试带来了复杂性
  5. 微服务架构模式应用的改变将会波及多个服务
  6. 部署一个微服务应用也很复杂

部署方法

使用PaaS服务,例如Cloud Foundry,PaaS给开发者提供一个部署和管理微服务的简单办法,他把这些服务都打包内置解决了。一个典型的开始点是使用一个集群化方案,比如配合Docker使用Mesos或Kubemetes。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 微服务最近非常流行,各大互联网公司纷纷采用微服务架构体系,微服务架构模式正在为敏捷部署以及复杂企业应用实施提供巨大...
    Sting阅读 9,115评论 0 57
  • 原文链接:Introduction to Microservices 微服务介绍(本文) 构建微服务之使用API网...
    nonumber1989阅读 15,762评论 9 57
  • “微服务架构”这一术语在前几年横空出世,用于描述这样一种特定的软件设计方法,即以若干组可独立部署的服务的方式进行软...
    ThoughtWorks阅读 16,994评论 1 71
  • 一、微服务将变得轻量级 架构需要由人去设计,这些人被称为架构师。或许很多人并未授予架构师的头衔,但自己却从事着架构...
    justmilkrain阅读 5,464评论 10 109
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,993评论 19 139