您好,欢迎来电子发烧友网! ,新用户?[免费注册]

您的位置:电子发烧友网>源码下载>数值算法/人工智能>

Seagull分布式系统概述及运作原理

大小:0.6 MB 人气: 2017-09-28 需要积分:1

  什么是Seagull?

  Seagull是一个容错和故障恢复的分布式系统,用来并行执行测试包。Seagull由以下几部分组成:

  Apache Mesos(管理Seagull集群上的资源)

  AWS EC2(提供组成Seagull和Jenkins集群的实例)

  AWS DynamoDB(存储调度器的元数据)

  Docker(隔离测试需要的服务)

  Elasticsearch(追踪测试运行次数和集群使用数据)

  Jenkins(搭建代码项目并运行Seagull调度器)

  Kibana和SignalFx(提供监控和报警)

  AWS S3(为测试日志提供真实数据来源)

  挑战

  在准备单片Web应用和Yelp主机配置新的生产代码之前,Yelp开发人员在特定的主机上运行整个测试包。测试前,开发人员需启动用来调度集群测试的Seagull。以下两点需要着重考虑:

  1. 性能:每个Seagull-run包含将近10万个测试,依次运行完毕需要大约2天时间。

  2. 规模:通常一天有300多个seagull-runs在运行,高峰时段要同时运行30-40个测试。

  这项任务的挑战在于执行每一个Seagull-run所花费的时间是以“分钟”而不是以“天”来计算,同时保证在这个时间段内成本效益好。

  Seagull怎样运作?

  首先,开发人员在控制台启动Seagull-run,即启动Jenkins搭建代码项目并生成测试列表。然后,将测试打包传给Seagull集群上的调度器进行测试。

非常好我支持^.^

(0) 0%

不好我反对

(0) 0%

      发表评论

      用户评论
      评价:好评中评差评

      发表评论,获取积分! 请遵守相关规定!