新浪SAE究竟是什么呢?
從產品的概念和發展歷程方面來講,Sina App Engine簡稱為SAE,是新浪研發中心于2009年8月開始內部開發,并在2009年11月3日正式推出第一個Alpha版本的國內首個公有云計算平臺,SAE是新浪云計算戰略的核心組成部分。具有以下幾個特點:
1、SAE作為國內的公有云計算,從開發伊始借鑒吸納Google、Amazon等國外公司的公有云計算的成功技術經驗,并很快推出不同于他們的具有自身特色的云計算平臺。
2、SAE選擇在國內流行最廣的Web開發語言PHP作為首選的支持語言,Web開發者可以在Linux/Mac/Windows上通過SVN、SDK或者Web版在線代碼編輯器進行開發、部署、調試,團隊開發時還可以進行成員協作,不同的角色將對代碼、項目擁有不同的權限;
3、SAE提供了一系列分布式計算、存儲服務供開發者使用,包括分布式文件存儲、分布式數據庫集群、分布式緩存、分布式定時服務等,這些服務將大大降低開發者的開發成本。同時又由于SAE整體架構的高可靠性和新浪的品牌保證,大大降低了開發者的運營風險。
4、作為典型的云計算,SAE采用“所付即所用,所付僅所用”的計費理念,通過日志和統計中心精確的計算每個應用的資源消耗(包括CPU、內存、磁盤等)。
總之,SAE就是簡單高效的分布式Web服務開發、運行平臺。
SAE的核心優勢
首先來講,確定發展目標是一個平臺成長的關鍵,SAE的基本目標用戶有兩種:一種是Web開發者,另一種是普通互聯網上網人群。
對于Web開發者,SAE帶來的好處主要有以下四個方面:
1、硬件成本更低,無需預先購買設備,承擔更大的投入風險。
2、開發成本更低,SAE提供許多服務供開發者使用,開發者無需重復開發,包括隊列、數據庫、緩存、定時、驗證碼、計數器,幾乎覆蓋了Web開發的所有領域。另外對于特定開放平臺的開發者,比如新浪微博開發者,SAE已經集成了完整的OpenAPI的封裝,將開發者的開發成本降到最低。值得一提的是,SAE的開發者目前已經形成了良好的交流氛圍,在意見反饋中心、SAE官方群,SAE官方微群可以看到很多熱情的開發者在一起共同提高。
3、運維成本更低,在SAE上的應用無需關心硬件維護、服務監控、數據容災等操作,SAE會通過其高可靠的架構和方便的監控頁面為用戶將運維成本降到最低擴展性更強,在SAE上的服務無需關心服務壓力猛增時帶來的擴容等操作,SAE自動支持服務擴展
4、更加安全可靠,SAE自動提供SQL語句性能分析、前端防攻擊、代碼檢查等功能,在SAE上的所有應用均為多機房容災部署,比傳統的部署模式更加安全可靠,并且SAE提供服務的SLA來實現對用戶服務質量的承諾
對于普通上網人群,使用SAE可以:
使用推薦應用一鍵安裝Web應用,普通用戶無需會編碼,也可以在瞬間擁有自己的團購、博客、微博、Wiki等。
SAE整體架構介紹
SAE從架構上采用分層設計,從上往下分別為反向代理層、路由邏輯層、Web計算服務池。而從Web計算服務層延伸出SAE附屬的分布式計算型服務和分布式存儲型服務,具體又分成同步計算型服務、異步計算型服務、持久化存儲服務、非持久化存儲服務。各種服務統一向日志和統計中心匯報,參考下圖:

7層反向代理層:HTTP反向代理,在最外層,負責響應用戶的HTTP請求,分析請求,并轉發到后端的Web服務池上,并提供負載均衡、健康檢查等功能。
服務路由層:邏輯層,負責根據請求的唯一標識,快速的映射(O(1)時間復雜度)到相應的Web服務池,并映射到相應的硬件路徑。如果發現映射關系不存在或者錯誤,則給出相應的錯誤提示。該層對用戶隱藏了很多具體地址信息,使開發者無需關心服務的內部實際分配情況。
Web服務池:由一些不同特性的Web服務池組成。每個Web服務池實際是由一組Apache(PHP)組成的,這些池按照不同的SLA提供不同級別的服務。每個Web服務進程實際處理用戶的HTTP請求,進程運行在HTTP服務沙盒內,同時還內嵌同樣運行在SAE沙盒內的PHP解析引擎。用戶的代碼最終通過接口調用各種服務。
日志和統計中心:負責對用戶所使用的所有服務進行統計和資源計費,并設定的分鐘配額,來判定是否有非正常的使用。分鐘配額描述了資源消耗的速度,當資源消耗的速度到達一個預警閾值時,SAE通知系統會提前向用戶發出一個警告,提醒用戶應用在某個服務上的使用可能存在問題,需要介入關注或處理,配額系統是SAE用來保證整個平臺穩定的措施之一;日志中心負責將用戶所有服務的日志匯總并備份,并提供檢索查詢服務。
各種分布式服務:SAE提供幾乎可以覆蓋Web應用開發所有方面的多種服務,用戶可以通過StdLib(可以理解為SAE PHP版的STL)很方便的調用它們。
SAE和虛擬主機的區別
提到云平臺,新浪很自然的想到和以往虛擬化技術的區別。兩者的主要區別表現在以下幾個方面:
1、傳統服務托管面向的是硬件軟件設備,使用者得到的也是設備的使用權;而SAE面向的服務,使用者得到的是服務的使用權。
2、傳統服務托管不面向開發者,開發者無法在其上享受到開發的樂趣;而SAE的一個重要用戶就是web developer,開發者可以在其上通過在線調試、日志分析、協作共享等功能進行web開發。
3、傳統服務托管不提供分布式系統解決方案;而SAE提供的完整的分布式web服務的解決方案,其中不僅僅包括分布式數據庫、分布式文件系統,更包括分布式定時器系統、網頁抓取服務、圖像處理服務等。
4、傳統服務托管不解決域名問題,用戶往往煩惱于域名申請;而SAE的用戶將自動得到在sinaapp下的二級域名,同時SAE還支持域名cname。
5、傳統服務托管無法保證SLA(Service Level Agreement),硬件故障的成本基本由使用者承擔;而SAE保證用戶的SLA,用戶的web服務自動享有高冗余的前端服務器、享有自動負載均衡系統、服務自動擴展、服務自動收縮等功能。
6、傳統的服務托管采用預付費的方式,費用固定且和實際使用情況無直接關系;而SAE采用預充值方式,“所付即所用,所付僅所用”,web服務的一切損耗均提供報表查詢和賬單匯總,讓用戶一目了然。如果你注冊SAE后通過實名認證,如果你前一天流量用完,第二天將會送你1000云豆,就是相當于4G的流量,大概能支持5萬PV,這些都是免費的。
新浪為什么要做SAE?
Sina App Engine項目始于2009年8月,目標為云計算時代的分布式web服務提供一整套解決方案。開發SAE主要是出于對內、對外兩方面考慮:
對內:新浪很早以前就開始了關于私有云的開發和實踐,所以為了進一步提高公司資源的利用率,更加提高web開發的效率,降低web運營的成本,決定了新浪要開發SAE。
對外:亞馬遜、Google都是國外的成功的提供公有云計算服務的公司,SAE也想借助云計算這樣一個趨勢,為國內廣大用戶提供云計算的分布式web服務的開發、運行平臺。
新浪的paas服務支持
整個云計算各個層面的增長趨勢,saas在前面增長非常高,新浪看到整個的趨勢里面,saas和paas的占比越來越高。整個IT效率提升是第一需求,并不是所有的企業,都有非常強的能力,可以自己建設,自己運維,自己管理。就導致IT企業在選擇我用什么樣的設施基礎架構的時候,會考慮怎么樣最高效。首先saas是最好的解決方案,它基本上不需要運維,對于IT的管理者來說是很高效的解決方案。paas的集成度也非常高,可以降低很多的開發投入和資源。
新浪的應用越來越向移動轉型,企業越來越向移動轉型,隨著現在整個行業的變化,信息的快速交換,智能終端、移動終端的出現,都要向移動轉型,這方面就需要一個平臺。同時企業內部的IT系統,也是一樣的。在企業內部,隨著企業的移動辦公,企業內部的IT系統,也需要優化,需要向移動轉型,這些都是作為paas和saas更加適應的解決方案。
這個趨勢從國內來看,越來越多的企業、創業團隊,開始考慮使用云計算服務。下面是工信部的調查。在2014年新浪發現云計算水平有所提升,國內的企業對云計算開始接受。新浪SAE的業務量,和收入來看,最近兩年,都得到了顯著的提升,說明大家越來越認可。
新浪整個的SAE是國內最早的公有云計算平臺,發布于2009年11月發布,在2011年的11月份,新浪開放了java的平臺的運營環境,在2013年6月份開始,開始研發企業級技術解決方案。在今年新浪SAE已經開始小范圍的進行內測了。
SAE目前有35萬的用戶,為什么新浪的用戶這么多?一方面是新浪的口碑,一方面新浪認為它是非常高效,非常能夠幫助開發者節省資源的?;趐aas本身的軟件, 一個開發者在使用新浪SAE的時候,完全不需要付費,一個開發者在申請一個SAE的環境的時候,他在開發測試、調試的過程中,是不需要付任何的費用。新浪是按需付費的門檻。
很多的開發者其實在平臺上需要做大量的調研的工作,需要做大量的初期的開發工作。新浪現在的流量,是每天超過10億。最上面是業界最有名的paas平臺,新浪在后面。整個的SAEpaas平臺,是屬于底層的。
像Mysqlrdc,kvdb 、tripps和storger.新浪的應用不是上面的API,所有的都新浪自己來做,是不可能實現的,新浪本身是一個開放的平臺,第三方的開放商業,能夠豐富整個平臺的服務,和平臺的功能,能夠讓真正的云計算的用戶,他們能夠高效的低成本的使用,建立他們APP的應用。
新浪有22種各類服務,包括短信、地理信息服務、郵件服務、推送服務、人工智能服務、安全檢查服務、搜索服務。來自360、高德、有道,對服務商的選擇非常的嚴格。新浪不會非常關心你的API,都會找到平臺的本身,新浪如果要承擔起給用戶提供最好服務的同時,必須是可靠可用的。
這部分是說新浪針對大數據方面的趨勢,新浪也在去年年底推出了superQuery的功能。用簡單的方法就是讓所有的SAE的用戶,可以實時的對SAE應用的請求、日志、行為做分析,同時可以把他們一些特定的數據,傳到這個平臺上來,幫助他們做定向的分析。
在企業幫助移動化轉型方面,新浪提供了APP工廠,包括這個應用快速的生成。新浪也提供了BaaS,可以把很多遠端的服務,可以解決計算能力不足的問題。也會對接一些更豐富的API服務,幫助這些開發者順利的向移動轉型。
針對開發本身,新浪非常的強調平臺使用的易用性,新浪推出了手機的掌上SAE,方便用戶隨時隨地掌握應用運行情況,分析應用的數據。在下面新浪還推出了能夠在手機上直接的續費,避免出現異常的狀況,這時候都可以進行快速的恢復,這是移動版SAE主要的考慮。
在安全的方面,就像這次可信云更大的一方面講的,新浪在SAE本身做了很多的工作。這是一個簡單的考慮,最下一層是SAE的平臺層,這一層主要是做一些基礎性。新浪整個的SAE是DDOS的服務方案,在外面會有一些安全的掃描和安全的檢測,新浪也會提供第三方的安全檢查,避免出現重大的安全性的事故。在平臺之上新浪會分兩層,一個是帳戶的安全,一個是應用的安全。用戶在寫操作的時候,新浪會要求他輸入第二層的密碼,這個密碼可能會跟手機綁定。再它之上新浪有管理安全,管理安全新浪是想在開發者來講,在管理的時候,開發者會引進不同的開發人員,對開發人員進行控制,有一套比較負責的項目權限對應人的安全機制。
新浪對于整個計算資源的消費,是有一個很清晰的審核和進入機制。而且新浪對于整個的消費,對于性能,對于云計算的資源,能夠有一個運算管理的機制。一旦用戶出現特殊的情況,比如說出現泄露,或者是代碼本身的質量。
一個是數據安全,一個是代碼的安全,數據的安全,對整個的用戶數據,有個很好的保護機制,保證這個數據不會出現重大的丟失的問題。另外一方面,新浪對數據的使用,有一個安全的考核機制。
代碼安全,新浪提供了代碼的加密機制。新浪會提供自己研發的解決方案,可以進行隔離。
對于現在很多的企業和行業,很多的企業是需要私有云的解決方案,新浪也希望在企業內部使用的更加方便。從去年開始研發,在今年也推出了私有云的MAE,明天會著重的介紹。MAE介紹了SAE成熟的經驗和解決方案。另外它是一鍵部署的,非常方便企業使用。
在可信云項目中,新浪新浪去年8月份開始就全程的參與,參與了整個可信云的制定討論,而且作為國內最大的paas服務商,新浪提供了很多的意見和幫助。在整個的上面各項中,新浪很順利的通過了,這個項目本身,對新浪的平臺而言,也是非常好的提升和挑戰。
像持久性、遷移性、另外一方面也讓新浪自身去提升新浪的服務質量。在整個的過程中,云引擎,運輸局庫、云存儲,這三項新浪一次性的通過,新浪目前為政府部門、銀行、大學、報社提供了服務。
這方面可以提升新浪的服務質量,這是一個嚴格的服務的要求,另外新浪會更加的遵守新浪的服務承諾,新浪希望讓整個的行業服務更加標準,讓用戶更放心。
對于行業而言,我覺得做可信云,更多的是真正讓國內的云服務企業有一個標準,讓他們真正的重視他們這個所謂的服務質量和他們之間的關系,讓他們真正的按照一個要求去實現。對于想使用,或者是愿意使用的云計算的行業用戶而言,他們有一個選擇的標準,他們能夠看哪些標準是真正的符合標準,是站在行業標準之內的,新浪可以進行考量,而不是像以前瞎做。未來新浪希望給政府,給企業提供更多的云服務。
從新浪整個SAE未來的考慮,是兩個方面。對外是走一些細分的垂直行業,因為從整個互聯網來看,十年前大家對門戶是這個類型,近兩年垂直門戶迅速的崛起,而且垂直門戶的影響力、市值來看,不亞于傳統的門戶。只有做細分,做垂直的,才有可能真正的貼近用戶的需求,才能讓用戶認可。所以新浪也在努力的探討,也去調研,去嘗試一些垂直行業。媒體和自媒體本身面臨著轉型,隨著整個建設,整個用戶接觸信息的渠道,隨著整個信息交換的頻度,面臨很大的轉折。在其中新浪是有機會的。另外在社交、游戲、電商,包括傳統的企業,和線上、線下企業溝通的結合,都需要IT的變革。再教育上更是這樣的,金融云本身一方面是改變金融自身的變革,另一方面金融需要跟互聯網快速的結合,能夠推向市場。
希望借助新浪集團的傳統優勢,打造生態體系。新浪本身主要是微博、現在是開放平臺,新浪希望把新浪集團的媒體咨詢,包括社交,這些相關的資源,通過某種開放模式開放出來,能夠真正實現信息的產生、信息的交換、信息的獲取,信息的消費,能夠快速的建立起來。在這其中新浪希望SAE可以作為新浪整個生態過程中重要的環境,新浪希望大量的托管,需要承接第三 方的業務。在整個的新浪體系里面,SAE是非常大的,非常好的支撐工具。從目前來看,在整個的新浪集團里面,在這次世界杯期間有很多的競猜。