您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>數(shù)值算法/人工智能>

Seagull分布式系統(tǒng)概述及運(yùn)作原理

大?。?/span>0.6 MB 人氣: 2017-09-28 需要積分:1

  什么是Seagull?

  Seagull是一個(gè)容錯(cuò)和故障恢復(fù)的分布式系統(tǒng),用來并行執(zhí)行測(cè)試包。Seagull由以下幾部分組成:

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

  AWS EC2(提供組成Seagull和Jenkins集群的實(shí)例)

  AWS DynamoDB(存儲(chǔ)調(diào)度器的元數(shù)據(jù))

  Docker(隔離測(cè)試需要的服務(wù))

  Elasticsearch(追蹤測(cè)試運(yùn)行次數(shù)和集群使用數(shù)據(jù))

  Jenkins(搭建代碼項(xiàng)目并運(yùn)行Seagull調(diào)度器)

  Kibana和SignalFx(提供監(jiān)控和報(bào)警)

  AWS S3(為測(cè)試日志提供真實(shí)數(shù)據(jù)來源)

  挑戰(zhàn)

  在準(zhǔn)備單片Web應(yīng)用和Yelp主機(jī)配置新的生產(chǎn)代碼之前,Yelp開發(fā)人員在特定的主機(jī)上運(yùn)行整個(gè)測(cè)試包。測(cè)試前,開發(fā)人員需啟動(dòng)用來調(diào)度集群測(cè)試的Seagull。以下兩點(diǎn)需要著重考慮:

  1. 性能:每個(gè)Seagull-run包含將近10萬個(gè)測(cè)試,依次運(yùn)行完畢需要大約2天時(shí)間。

  2. 規(guī)模:通常一天有300多個(gè)seagull-runs在運(yùn)行,高峰時(shí)段要同時(shí)運(yùn)行30-40個(gè)測(cè)試。

  這項(xiàng)任務(wù)的挑戰(zhàn)在于執(zhí)行每一個(gè)Seagull-run所花費(fèi)的時(shí)間是以“分鐘”而不是以“天”來計(jì)算,同時(shí)保證在這個(gè)時(shí)間段內(nèi)成本效益好。

  Seagull怎樣運(yùn)作?

  首先,開發(fā)人員在控制臺(tái)啟動(dòng)Seagull-run,即啟動(dòng)Jenkins搭建代碼項(xiàng)目并生成測(cè)試列表。然后,將測(cè)試打包傳給Seagull集群上的調(diào)度器進(jìn)行測(cè)試。

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?