成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

輕舟已過萬重山——真正的技術派公司是怎么聯(lián)調(diào)、測試和發(fā)布的?

makeFoxPlay / 3583人閱讀

摘要:這么思考問題的原因也很簡單,我們篤信工程師文化,靠技術而不是管理解決問題,正如陳皓同學所言如果你是一個技術公司,你就會更多的相信技術而不是管理。

鄭昀 創(chuàng)建于2017/3/8 最后更新于2017/3/10

關鍵詞:研發(fā)協(xié)作,Docker,環(huán)境變量,開發(fā)聯(lián)調(diào),環(huán)境維護,虛擬機,中間件,配置與代碼分離,git,jenkins

開發(fā)聯(lián)調(diào),測試,預發(fā),生產(chǎn),稍微上規(guī)模的互聯(lián)網(wǎng)技術團隊,每一次發(fā)布都需要經(jīng)歷這四個階段。每一個階段都對應于一個環(huán)境。所以我們會面對:
開發(fā)聯(lián)調(diào)環(huán)境,測試環(huán)境,預發(fā)環(huán)境,生產(chǎn)環(huán)境。

產(chǎn)品線若干條。并發(fā)多個版本。工程無數(shù),有Java,有PHP,有中間件。
說句狠話:沒有趁手的利器,生產(chǎn)效率打完對折再打?qū)φ郏?strong>勿謂言之不預也。

云縱有 CloudEngine,如我的《私有云的難處—為什么需要CloudEngine?》和《#研發(fā)解決方案#研發(fā)協(xié)作平臺CloudEngine》文章所述,我以為能非常流暢地打通這四個環(huán)境,即使生產(chǎn)環(huán)境是混合云,即使應用可能發(fā)布在Docker容器里也可能發(fā)布在虛擬機里。

陳皓同學在《從Gitlab誤刪除數(shù)據(jù)庫想到的》中說道:

一個公司的運維能力的強弱和你上線上環(huán)境敲命令是有關的,你越是喜歡上線敲命令,你的運維能力就越弱,越是通過自動化來處理問題,你的運維能力就越強。

而我希望的是:

環(huán)境維護,應用部署,只是勾勾點點,沒有心理負擔,dont make me think。 一個代碼分支,對應的一個包(或鏡像,對應于
Docker 的
Image),可以流經(jīng)開發(fā)聯(lián)調(diào)環(huán)境、測試環(huán)境,直接上預發(fā)環(huán)境,上生產(chǎn)環(huán)境,上云端,一路穿行沒有障礙,全程無需手工干預,無需手工改配置文件重新打包。

這么思考問題的原因也很簡單,我們篤信工程師文化,靠技術而不是管理解決問題,正如陳皓同學所言:

如果你是一個技術公司,你就會更多的相信技術而不是管理。相信技術會用技術來解決問題。相信管理,那就只會由制度、流程和價值觀來解決問題。

那么怎么辦到呢?
先來一個管中窺豹:

圖0 管中窺豹,CE里是怎么申請服務器資源的
再來品嘗一下關鍵點。

一,用工具管好配置

我之前說過:

要做到真正的大環(huán)境一致,必須將配置完全與代碼分離,這里的配置不僅僅是服務之間的 IP
地址/內(nèi)部域名/自動發(fā)現(xiàn),還包括不同環(huán)境下不同應用的配置參數(shù)等。 首先我們把與環(huán)境相關的參數(shù)都存儲在持久化配置中心里,比如 redis/zk
的訪問域名,比如第三方合作伙伴的接口IP地址等。 其次,每個應用也都有自己的配置模板,不同環(huán)境部署的應用默認繼承配置模板,我們可以通過
CloudEngine 對配置做一些微調(diào),也就是下面要講到的“臨時屬性信息”了。

CloudEngine 和 SimpleWay 會把環(huán)境標識(如 dev/dev-stable/test/test-stable/product 等)和需求工單號,以環(huán)境變量的方式打入“服務器”(即容器或虛擬機)里。
工程通過環(huán)境變量確認自己在哪一個環(huán)境里,對應哪一個需求工單,從而從持久化配置中心讀取到當前環(huán)境和當前需求對應的屬性信息。

所謂屬性信息有三類:
1)環(huán)境屬性信息:
環(huán)境的配置信息在環(huán)境層級設置,對應于“環(huán)境管理”菜單。比如開發(fā)穩(wěn)定環(huán)境下的環(huán)境變量,我可以通過如下界面統(tǒng)一配置:

(圖1 環(huán)境屬性信息)

2)應用屬性信息:
應用的配置信息在應用層級設置,對應于“應用管理”菜單。比如janus工程(Java)的應用配置,我可以通過如下界面來配置:

(圖2 應用屬性信息)

3)臨時屬性信息:
應用實例的配置信息在服務器層級設置,對應于“服務器管理”菜單。也就是這次我申請機器資源時,可以通過如下界面設置好臨時屬性信息,只有這個應用實例能訪問到:

(圖3 臨時屬性信息)

二,區(qū)分出穩(wěn)定環(huán)境和非穩(wěn)定環(huán)境

以前沒有 CloudEngine 的時候,我們會維護三套測試環(huán)境:常規(guī)分支測試環(huán)境,緊急分支測試環(huán)境,特殊分支測試環(huán)境。分別對應于上線的班車模式(每周固定發(fā)車),警車模式(bugfix),專車模式(版本很大,開發(fā)和測試周期較長)。
維護三套測試環(huán)境,真心累。
現(xiàn)在只需要維護一套測試環(huán)境。
那么問題來了,多個需求工單,怎么在一套環(huán)境里并行測試?
秘訣就是,在環(huán)境里再建一個穩(wěn)定環(huán)境(Stable)。

穩(wěn)定環(huán)境里的應用,只會部署 Release 版本。
根據(jù)需求工單申請的新服務器資源,可以訪問穩(wěn)定環(huán)境里的業(yè)務中心,至少能保證相關業(yè)務能正常運行,不會說突然功能不能用了,突然服務宕機了。

三,外網(wǎng)請求如何路由

如果開發(fā)聯(lián)調(diào)環(huán)境和測試環(huán)境里的應用需要接受外網(wǎng)的請求,那么在 CloudEngine 里也不需要反復申請外網(wǎng)域名。統(tǒng)一使用 router.yourcompany.com 域名接受外網(wǎng)請求,然后通過 nginx 轉發(fā)請求到相應的內(nèi)網(wǎng)應用。

圖4 是否需要接受外網(wǎng)請求

四,與git緊密結合

在相應的環(huán)境里,申請服務器資源時,你不需要鍵入 git 的代碼分支,你輸入應用名稱,選好應用之后,系統(tǒng)會自動列出相應的分支,智能吧:

(圖5 分支自動展現(xiàn))

這充分體現(xiàn)了我們的哲學:dont make me think。

五,小結

我們技術團隊可以標準化輸出的成體系的通用技術能力有:

1)
基于虛擬機集群和容器集群的研發(fā)協(xié)作平臺:
申請服務器資源(虛擬機或容器),自動化構建,自動化部署,可自動發(fā)布到我們自己的公司機房、阿里云、螞蟻金融云和IDC機房,支持版本回滾;

2)
電商全套中間件解決方案:

定時任務管理與調(diào)度平臺,

異步消息可靠推送系統(tǒng),

分布式并行計算調(diào)度和管理系統(tǒng),

一站式智能監(jiān)控報警平臺,

分布式跟蹤系統(tǒng),

分布式緩存管理系統(tǒng),

數(shù)據(jù)庫自動化運維平臺,

3)
大數(shù)據(jù)全套解決方案:

自助式報表平臺,

即席查詢系統(tǒng),

數(shù)據(jù)庫變更訂閱中心,

實時數(shù)據(jù)大屏發(fā)布平臺,

大數(shù)據(jù)計算任務發(fā)布管理平臺,

4)
運維基礎設施:

運維自動化平臺,

云平臺基礎(虛擬機集群和容器集群),

大數(shù)據(jù)分析棧架構。

此體系絕非一朝一夕所能搭建,這是秉承著平凡人做非凡事的理念,一群信仰技術的工程師邊開飛機邊換引擎,花了幾年歲月建造的森嚴有序的技術體系。

-EOF-

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/66912.html

相關文章

  • 輕舟過萬重山——真正技術公司怎么聯(lián)調(diào)測試發(fā)布?

    摘要:這么思考問題的原因也很簡單,我們篤信工程師文化,靠技術而不是管理解決問題,正如陳皓同學所言如果你是一個技術公司,你就會更多的相信技術而不是管理。 鄭昀 創(chuàng)建于2017/3/8 最后更新于2017/3/10 關鍵詞:研發(fā)協(xié)作,Docker,環(huán)境變量,開發(fā)聯(lián)調(diào),環(huán)境維護,虛擬機,中間件,配置與代碼分離,git,jenkins 開發(fā)聯(lián)調(diào),測試,預發(fā),生產(chǎn),稍微上規(guī)模的互聯(lián)網(wǎng)技術團隊,每一次...

    yexiaobai 評論0 收藏0
  • 又讓馬兒跑又不讓吃草,微服務化如何完成低成本改造?

    摘要:小編一哥們和我吐槽自家的煩惱原本一個有錢有閑的證券行業(yè)經(jīng)理一年前被老板派去支持創(chuàng)新業(yè)務探索因為新型業(yè)務在不斷加速鋪開當前的單體式應用復雜度越來越高業(yè)務上線過程繁瑣流程冗長資源分配耗時較多更新頻率越來越低人員也越來越顯得捉襟見肘這哥們于是開始 小編一哥們和我吐槽自家的煩惱原本一個有錢有閑的證券行業(yè)IT經(jīng)理一年前被老板派去支持創(chuàng)新業(yè)務探索因為新型業(yè)務在不斷加速鋪開當前的單體式應用復雜度越來...

    QiShare 評論0 收藏0
  • 拷問傳統(tǒng)企業(yè)CIO:微服務化值得嗎?

    摘要:以推出輕舟微服務平臺的網(wǎng)易云為代表,云計算公司正在微服務領域發(fā)力,促進企業(yè)數(shù)字化創(chuàng)新。以網(wǎng)易云輕舟微服務平臺為例,該平臺已經(jīng)在物流工業(yè)和金融等領域得到了深度應用。 所謂數(shù)字化轉型升級,就是以數(shù)字技術優(yōu)化傳統(tǒng)資源,企業(yè)需要謹慎地選擇合適的技術逐步完成自己的數(shù)字化戰(zhàn)略。以推出輕舟微服務平臺的網(wǎng)易云為代表,云計算公司正在微服務領域發(fā)力,促進企業(yè)數(shù)字化創(chuàng)新。那么,微服務對數(shù)字化轉型意味著什么?...

    bovenson 評論0 收藏0
  • 從Kubernetes到“云原生全家桶”,網(wǎng)易如何讓業(yè)務部署提效280%?

    摘要:近日,網(wǎng)易云輕舟微服務團隊接受了的采訪,分享了網(wǎng)易云在云原生領域尤其是方面的實踐經(jīng)驗。影響根據(jù)網(wǎng)易云團隊的數(shù)據(jù),使研發(fā)效率提高了以上,部署效率提高了。無論是否使用網(wǎng)易云產(chǎn)品,網(wǎng)易云都鼓勵其他公司嘗試。 近日,網(wǎng)易云輕舟微服務團隊接受了CNCF的采訪,分享了網(wǎng)易云在云原生領域尤其是Kubernetes方面的實踐經(jīng)驗。以下為案例全文:showImg(https://segmentfault...

    zhunjiee 評論0 收藏0
  • 微服務架構:引領數(shù)字化轉型基石

    摘要:然而,敏銳的已經(jīng)意識到,德邦快遞率先引入的微服務架構,正在成為企業(yè)數(shù)字化轉型升級戰(zhàn)略成功的基石,成為企業(yè)引領行業(yè)創(chuàng)新的秘密武器。 2018年雙11,中國網(wǎng)民釋放出來超過2000億元的購買力,給快遞公司帶來了新的一輪考驗。剛剛從大件快遞切入快遞市場的德邦快遞,卻無驚無險地完成了客戶的托付。信任德邦快遞的店主和買家并不知道,在這戰(zhàn)績背后,德邦快遞投入了每年5億元的數(shù)字化建設成本,并采用了先...

    wayneli 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<