支持快速迭代的LAMP解決方案 ——貼吧LAMP解決方案

來源:本站原創 專業IT吐槽 超過549 views圍觀 0條評論

摘要:天下武功,唯快不破,互聯網競爭的利器就是快!且聽貼吧LAMP解決方案如何全面支持快速迭代。

關鍵詞:LAMP,快速迭代

領域:架構

總概

貼吧是功能性產品,唯快不破是永恒的準則,這一特點決定了快速迭代是需要解決的關鍵性問題。快速迭代,分解開來有如下部分:開發階段,快速開發;測試階段,包含了環境快速搭建、自動化測試工具;運維階段,包含了集群管理技術、自動化運維工具;同時,這三方面的工作需要一個整體性的解決方案銜接起來。

早期的貼吧,作為一個高性能社區,功能相對單一,全部采用C語言開發,系統可重用程度低,開發、測試效率低,運維方面的積累也很少。為了提高效率,開始嘗試LAMP架構,經過幾年的發展,貼吧已全部遷移到了LAMP。隨著產品規模急劇膨脹,30+子系統,150+模塊,500+機器,10億+流量,在LAMP架構方面積累了很多經驗,逐漸形成了快速迭代的一體化方案。如下圖所示:

該解決方案由開發階段、測試階段、運維階段組成。開發階段又分成接入層、業務邏輯層、存儲層。該解決方案支撐大規模的線上應用,同時保持了快速迭代的特性。基于該解決方案,開發人員能專注于業務邏輯開發,測試人員能專注于持續集成,運維成本能大大降低。

開發

開發方面分為接入層、業務邏輯層、存儲層。

接入層處于瀏覽器和后端服務之間,用來解析http協議并組織成相應的協議格式,完成客戶端和服務器之間的通信,還包括攻擊防范、頁面緩存、負載均衡等多種功能。Web server是其核心組成部分。接入層的目標是通過統一的方案提供簡單可依賴的接入層架構,經過全面調研nginx具有通用性強、效率高、功能全面、配置靈活等特點,是webserver未來發展的主力軍,確定采用nginx統一接入層。

業務邏輯層包含了PHP框架、業務邏輯、LIB庫、交互層。業務邏輯層常常包含一些開發規范,這些規范就像法律一樣,我們不僅要有法可依,還要有法必依。在我們的解決方案中,PHP框架=規范+庫,規范比如目錄部署規范、URL規范、配置規范等,這些規范通過相應的庫實現,以達到有法必依的目的。LIB庫封裝常用的功能。基于這個解決方案,開發者開發應用,只需完成業務邏輯部分。

中間層,如下圖所示,包含在業務邏輯層中,對于業務邏輯層的快速迭代非常重要。中間層對下做交互抽象,支持各種協議屏蔽協議細節;通過資源定位屏蔽部署細節;通過負載均衡提高系統穩定性。中間層對上做接口抽象,支持服務整合、接口適配、公共邏輯。中間層首先建立系統–子系統–模塊的體系,進行服務整合,圖中的API-LIB就是根據子系統劃分,將各模塊的接口(MIDL: Module IDL)轉化為子系統接口(SIDL: Service IDL);接口適配,SERVICE的接口通過SIDL描述,讓接口描述、接口文檔、線上代碼等自動同步,可維護性大大提高,同時通過元數據規范保證全系統的接口一致,易用性大大提高;收斂公共邏輯,對于公共邏輯,比如權限邏輯,收斂起來可維護性大大提高。

存儲層,提供各種通用服務、組件。其中的通用數據存儲框架提供通用的數據存儲和訪問解決方案,以一種統一的設計模式來支持大多數數據存儲模塊的設計和實現;統一數據訪問接口,對外部屏蔽數據拆分和存儲的細節;做到數據存儲的良好擴展性,通過通用的數據拆分模式來應對數據增長;將具有共性的需求抽象成通用服務或通用庫,以簡化設計和開發。

基于該解決方案,開發一個應用只需要:在接入層配置相應的分流,在業務邏輯層開發業務邏輯,使用存儲層合適的服務或基于框架完成數據模塊開發。能大大的提高開發效率,支持快速迭代。

測試

測試方面,為了支持快速迭代,必須提高自動化程度。而影響自動化的首要因素就是環境自動構建,常見的問題有:環境復雜,比如關聯關系復雜;環境搭建代價過大;環境功能不完整等。采用基準環境能解決這一問題,項目上線后自動從scmpf更新到基準環境;測試環境/開發環境從基準環境同步。基于基準環境,系統級別的持續集成也成為可能,同時可以集中大量測試工具。

運維

運維方面面臨著很多問題:服務遷移成本高,環境不一致帶來各種回滾,機器利用率不均衡,運維自動化程度低。為了解決這些問題,提出PHP系統運維方案。環境同步方面,主要是代碼同步的問題,采用運維規范+監控的方案;性能監控方面,基于交互層完成請求狀態、交互性能監控,基于調度中心獲取機器狀態;機器調度方面,通過調度中心完成動態/半自動機器調度。如下圖所示:

展望

通過該LAMP解決方案,在開發、測試、運維方面都能極大的提高效率。未來在LAMP架構方面,需要更多的在規范化、平臺化上下功夫。規范之后才能開展這種自動化的工作提高效率;平臺化可以把各種規范固化下來,提供自動化的支持。

by zhouren

 

李蕭明吐槽 當初10年公司挖人,盛大旅游一哥們跑過來和CEO大侃快速迭代,尼瑪被CEO罵了說你說的啥JB玩意,后來……。后來我們公司就倒閉了干。又一個悲催的回憶。

文章出自:CCIE那點事 http://www.qdxgqk.live/ 版權所有。本站文章除注明出處外,皆為作者原創文章,可自由引用,但請注明來源。 禁止全文轉載。
本文鏈接:http://www.qdxgqk.live/?p=914轉載請注明轉自CCIE那點事
如果喜歡:點此訂閱本站
  • 相關文章
  • 為您推薦
  • 各種觀點
?
暫時還木有人評論,坐等沙發!
發表評論

您必須 [ 登錄 ] 才能發表留言!

?
?
萌宠夺宝游戏