zoukankan      html  css  js  c++  java
  • 微服务演化

    微服务由SOA演化而来,SOAP切换到REST,更轻量和简单的服务调用协议。

    技术角度

    从2008年到2018年这十年间,有10个软件技术的“浪潮”。在“微服务”这个词被普遍采用之前,前五种技术浪潮已经存在——

    • 第一波包含轻量级容器技术(例如LXC和Docker),这些技术允许在运行时更有效地打包、部署和管理各个服务。

    • 第二波包括服务发现技术,它们让服务彼此通信而不明确地提及其网络位置。

    • 第三波包括监测技术(例如Graphite和Sensu),这些技术可以运行时监控和分析不同细节层次的微服务资源的行为。

    • 第四波包括容器编排技术(例如Mesos和Kubernetes),它们实现了容器分配和管理任务的自动化,抽象出底层的物理或虚拟基础架构。

    • 第五波包括延迟和容错通信库(例如Finagle和Hystrix),它们使服务能够更加高效和可靠地进行通信。

    其他五个浪潮是为了响应微服务的日益普及而出现的——

    • 第六次浪潮包括持续交付技术(例如Ansible和Drone),它们提供通用集成解决方案,以自动化网络规模微服务生产环境中的DevOps实践。

    • 第七次浪潮包括混沌工程技术(例如Simian Army和Chaos Toolkit),它可以自动执行关键的全系统可靠性和安全测试技术,例如故障和攻击注入。

    • 第八个浪潮包含边车(sidecar)技术(例如Prana和Envoy),它封装了与通信相关的功能,如服务发现和使用协议特定和容错通信库,以便从服务开发人员中抽象出来。

    • 第九波包括的无服务器(serverless)计算技术(例如,AWS Lambda和OpenWhisk),该模型实现了FaaS云模型。交付生产更精细的服务功能或功能,而无需创建和管理(例如,应对不一致的流量模式)执行所需的基础设施资源的复杂性。

    • 第十波包括服务网格技术(例如,Linkerd和Istio),它们建立在边车技术基础之上,以提供完全集成的服务到服务通信监视和管理环境。

    架构角度

    微服务架构的四代更迭——

    • 第一代:单个服务使用轻量级容器包装,使用容器编排工具运行时部署和管理;但每个服务都要负责自己跟踪其他服务的位置并进行失败处理。

    • 第二代:引入服务发现和可重用的容错通信库,但通信库的语言限制了服务的编写语言。

    • 第三代:引入标准的服务代理/边车作为一个透明的服务中介。

    • 第四代:这个想法是利用最近的FaaS和AWS的Lambda等无服务器-计算技术来进一步简化微服务的开发和交付。有了这种无服务器架构,微服务应用程序将基本上变成短暂的功能的集合,每个功能都可以根据需要快速随意创建、更新、替换和删除。

    未来挑战

    • 服务的模块化与重构:如何划分模块、分配职责、设计接口

    • 服务粒度:不同的项目团队对于微服务的大小规模意见不一致,缺乏统一的标准

    • 前端集成:通常是一个巨石的前台使用大量的后台的微服务体系,这导致所有单体体系结构的缺点依旧存在

    • 资源监控和管理:信息太多,无法做出及时的管理决策;如何定义一个准确的警告阈值、信息过滤——利用数据挖掘、控制理论和机器学习从历史事件中学习

    • 故障、恢复和自我修复

    • 组织文化和协调

    原文出处——IEEE SOFTWARE | PUBLISHED BY THE IEEE COMPUTER SOCIETY 2018
    译文:https://blog.csdn.net/blanchedingding/article/details/81006371

  • 相关阅读:
    Step by step Dynamics CRM 2013安装
    SQL Server 2012 Managed Service Account
    Step by step SQL Server 2012的安装
    Step by step 活动目录中添加一个子域
    Step by step 如何创建一个新森林
    向活动目录中添加一个子域
    活动目录的信任关系
    RAID 概述
    DNS 正向查找与反向查找
    Microsoft Dynamics CRM 2013 and 2011 Update Rollups and Service Packs
  • 原文地址:https://www.cnblogs.com/doit8791/p/9898212.html
Copyright © 2011-2022 走看看