专栏首页分布式系统的架构问题

分布式系统的架构问题

原文作者:Munish Gupta

原文地址:https://dzone.com/articles/architecture-concerns-for-distributed-systems

应用程序体系结构正在从庞大的庞然大物的时代演变为更为分布式的基于设计的模型。 这个变革的关键引发因素之一是云计算的出现,以及它在处理不断增长的规模方面的能力。 当一个企业主要沉浸在构建和管理单一应用程序的模型中(人和过程),构建新的分布式系统的过程需要重新学习一些旧的设计技术并采用一些新的模式。 作为其中的一部分,我将详细介绍某些架构问题,当转向分布式应用程序模式时,这些突出的问题.

调度程序/编制管理:从管理数百个实例到管理数千个实例,都需要能够以无缝的方式跨主机编排和调度服务实例或者容器。为了处理日益扩大的规模,工作量调度和编排是分布式系统的关键组成部分。像Docker Swarm,Kubernetes,Mesos,Marathon等是这个领域的一些主要产品

服务发现/注册:随着基于容器的服务的上下,需要有一种注册和注销服务的机制,以及在运行时发现服务端点的机制。像Consul,Zookeeper,etcd,Confd和Eureka这样的产品是这个领域的一些主导产品。这些产品中的大多数都支持跨服务实例的传入流量的负载平衡。

 系统状态管理/群集管理:随着群集的增长,需要管理群集的系统状态。什么是每个服务的SRV(服务资源),多少个实例,什么主机,什么是负载等。为了管理这个,需要跟踪系统状态的集群管理。 Docker Swarm Agents,Kubernetes Nodes / Masters,Mesos Slaves,Containership等都是这个领域的领先产品。

 数据存储:容器存储是短暂的,这意味着任何需要保留在容器生命周期之外的数据都需要在外部保存。像Docker Volume Plugin,Flocker,Kubernetes Persistent Volume等项目是一些关键产品

 网络:每个容器运行有不同的流程,都需要管理,并且有时需要隔离哪些容器服务可以访问哪些其他服务。多个容器在同一主机上运行,​​因此共享网络资源可能需要创建安全组以供容器隔离。同样,容器可能需要去发现跨主机托管的服务,并且需要一个简单的模型来访问这些服务。像Flannel,Weaveworks 和 Calico 是这个领域的一些产品。

 监视/审计/日志记录:在运行数千个容器的情况下,监视/审计/记录每个容器成为一个棘手的问题。数据/日志需要从每个容器中取出来进行分析。像Loggly,Fluentd,log entries,datadog 和 ELK stack 等是这个领域的一些关键产品。

除此之外,构建分布式应用程序时需要考虑的其他因素还有 Container OS(容器系统)和Container Runtime(容器运行时)。其他因素,如应用程序运行时间,部署管理,DNS(域名系统),安全性,SSO(单点登录) / OAuth,API网关,Circuit breakers(断路器),性能/可扩展性模式等仍然需要处理。

根据您的经验,还有什么是分布式应用程序的关键架构问题?如果是这样,请分享。

本文的版权归 虫儿飞 所有,如需转载请联系作者。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Jelastic专用存储容器指南

    在我们以前的文章中,我们已经开始揭示数据存储容器主要的可能性,这有助于改善你的项目文件系统的结构。我们还介绍了Jelastic中存储的5种类型的数据,现在我们将...

    虫儿飞
  • 分布式系统的架构问题

    原文地址:https://dzone.com/articles/architecture-concerns-for-distributed-systems

    bill_bisheng
  • 容器安全的全球威胁分析

    容器技术被广泛接受和使用的同时,容器以及容器运行环境的安全成为了亟待研究和解决的问题。为了进一步了解容器以及容器环境的安全威胁,为使用容器的用户提供安全防护建议...

    绿盟科技研究通讯
  • Docker For Test 系列四:容器管理

    docker run -d -p 13306:3306 --name qh2 qh-mysql

    测试邦
  • 2019年度容器安全现状分析

    随着越来越多的组织向微服务/DevOps转型,容器生态系统每年都会发生很大的变化。近期,Sysdig发布了《2019年度容器使用报告》,报告中大篇幅的介绍了20...

    绿盟科技研究通讯
  • 并发编程之同步容器类和并发容器类

    一、fail-fast机制 快速报错机制(fail-fast)能够防止多个进程同时修改同一个容器的内容。如果在你迭代遍历某个容器的过程中,另一个进程接入其中,...

    lyb-geek
  • 当容器遇见存储

    IT领域,变革的速度令人瞠舌。快速增长的数据,云计算规模的处理正推动企业向着更高效、更可靠和可扩展的方向前行。传统的应用架构已日趋极限,所幸的是,最被看好的容器...

    焱融科技
  • Docker学习笔记之运行和管理容器

    容器是基于容器技术所建立和运行的轻量级应用运行环境,它是 Docker 封装和管理应用程序或微服务的“集装箱”。在 Docker 中,容器算是最核心的部分了,掌...

    Jetpropelledsnake21
  • 容器应用得到发展 或将代替私有云

    OpenStack是一个为公共及私有云的建设与管理提供软件的开源项目,也是一种良好的容器管理环境,得到了越来越广泛的应用,那么管理人员如何像管理基础设施一样管理...

    静一
  • 容器应用得到发展或将代替私有云

    OpenStack是一个为公共及私有云的建设与管理提供软件的开源项目,也是一种良好的容器管理环境,得到了越来越广泛的应用,那么管理人员如何像管理基础设施一样管理...

    静一

扫码关注云+社区

领取腾讯云代金券