⑴ SAE的整體架構
SAE從架構上採用分層設計,從上往下分別為反向代理層、路由邏輯層、Web計算服務池。而從Web計算服務層延伸出SAE附屬的分布式計算型服務和分布式存儲型服務,具體又分成同步計算型服務、非同步計算型服務、持久化存儲服務、非持久化存儲服務。各種服務統一向日誌和統計中心匯報,參考下圖:
Level7 Reverse Proxy(7層反向代理層):HTTP反向代理,在最外層,負責響應用戶的HTTP請求,分析請求,並轉發到後端的Web服務池上,並提供負載均衡、健康檢查等功能。
Service Router(服務路由層):邏輯層,負責根據請求的唯一標識,快速的映射(O(1)時間復雜度)到相應的Web服務池,並映射到相應的硬體路徑。如果發現映射關系不存在或者錯誤,則給出相應的錯誤提示。該層對用戶隱藏了很多具體地址信息,使開發者無需關心服務的內部實際分配情況。
Web Service Pools(Web服務池):由一些不同特性的Web服務池組成。每個Web服務池實際是由一組Apache(php)組成的,這些池按照不同的SLA提供不同級別的服務。每個Web服務進缺畝頃程實際處理用戶的HTTP請求,進程運行在HTTP服務沙盒內,同時還內嵌同樣運行在SAE沙盒內的PHP解析引擎。用戶的代碼最終通過介面調用各種服務。
Statistics Center & Log Center(日誌和統計中心):負責對用戶所使用的所有服務進行統計和資源計費,並設定的分鍾配額,來判定是否有非正常的使用。分鍾配額描述了資源消耗的速度,當資源消耗的速度到達一個預警閾值時,SAE通知系統會提前向用戶發出一個警告,提醒用戶應用在某個服務上的使用可能存在問題,需要介入關注或處理,配額系統是SAE用來保證整個平台穩定的措施之一;日誌中心負責將用戶所有服務的日誌匯總並備份,並提供檢索查詢服務。
各種分布式服務:SAE提供覆蓋Web應用開發主要方面的多種服務,用戶可以通過StdLib(可以理解為SAE PHP版的STL)很方便的調用它們。同時因為Web服務的多樣性,SAE的標准服務不可能滿足所有場景的需求,所以SAE通過服務匯流排來對接第三方服務(如分詞、全文檢索等),SAE也歡迎第三方服務商選擇SAE來為開發者提供服務。
真正的用戶代碼是跑在SAE提供的Web運行環境下的,為了提供公有雲計算特有的安全性,SAE設計多層沙盒來保證用戶應用之間的隔離性。參考下圖耐擾:
最內層的就是用戶代碼,大部分PHP代碼不需要做任何修改就可以跑在SAE平台上。小部伏陸分代碼需要做一些修改以適應SAE的平台特性。這主要有,SAE因為安全性禁用了本地IO,所以fwrite等函數需要修改為使用TmpFD讀寫本地臨時文件或者直接通過Storage服務讀寫我們的分布式文件存儲。
PHP Zend為標準的PHP官方解釋器。
SAE Zend Sandbox為一個邏輯概念,為用戶的代碼運行提供良好的隔離性。這里有兩個層面:
1、是通過標準的php.ini,我們設定了一些特殊配置和禁用函數;
2、為了達到一些php.ini無法實現的沙盒功能,我們對Zend解釋器核做了一些改進,以便通過用戶標識將資源進行隔離。另外我們還把一些SAE的特定服務也在Zend層做了融合。
Apache為標準的Apache Web Server。不過我們禁用了htaccess,並提供了自己實現的替換方案AppConfig。用戶可以通過類自然語言的方式編寫AppConfig,如- compress: if(out_header[Content-Length] >= 500) compress 表示按條件啟動頁面壓縮。AppConfig提供的功能有:目錄默認頁面、自定義錯誤頁面、壓縮、頁面重定向、頁面過期、設置響應頭的content-type、設置頁面訪問許可權。我們選擇自行實現AppConfig還有一個考慮,就是因為傳統Apache的htaccess因為要按目錄遞歸方式合並配置文件,效率不能滿足SAE的需求。
HTTP Server沙盒為Apache的安全可靠運行提供了多種保護功能,比如防止某個用戶惡意佔用連接數從而導致整個Web服務不正常。
最外層的是標准POSIX環境,我們的服務跑在linux上。
接著將詳細討論我們架構設計的特點。
·擴展性
擴展性是分布式系統的兩個主要目的之一,SAE作為公有雲計算,同樣把服務的擴展性作為架構設計的重要指標,要求在用戶增長、壓力提升的情況下,可以實現自動的服務擴展,同樣的當壓力降低時,可以將服務收縮,以節約資源,整個過程無需人工參與。SAE人工只需做好容量規劃和管理。國外的公有雲計算架構的擴展性主要有兩個思路:
靜態擴展,用戶和資源有強綁定關系。最典型的例子為亞馬遜的EC2和Ruby雲計算平台Heroku,用戶申請的資源和用戶有嚴格的一對一關系,換句話說,A用戶申請的虛擬機在A退還資源前,B用戶不能使用,哪怕A用戶的虛擬機處於閑置狀態。
動態擴展,用戶和資源沒有強綁定關系。最典型的例子為Google App Engine,用戶申請的資源和用戶沒有嚴格的一對一關系,換句話說,處理A用戶請求的進程在處理完之後,可以馬上處理B用戶的請求。
兩種擴展性各有利弊,靜態擴展的長處是為平台提供了良好的隔離性,資源可以固定的映射在某個用戶下,但缺點是資源利用率不高;動態擴展的長處是資源利用率高,這樣整個雲計算平台的成本會很低,但缺點是對隔離性有更高的要求,因為資源可以在很短的時間被多個用戶使用。相比較,在安全性上,動態擴展要比靜態擴展的技術門檻更高。
在SAE平台上,我們採用以動態擴展為主,靜態擴展為輔的兼而有之的設計。在Web計算池層,是典型的動態擴展,沒有一個用戶獨佔Web服務進程,而是所有用戶以共享的方式使用Web服務進程,通過Cache,熱的用戶自然在緩存層占據更多的位置。而在SAE的某些服務中,擴展性又是以靜態擴展的方式展現,如RDC(Relational DB Cluster)分布式資料庫集群,當用戶申請了MySQL服務,我們就會在RDC後端根據SLA的級別創建一主多從的DB給用戶,在用戶顯式的刪除該DB前,該DB都不會被別人使用。當然,通過RDC,任何一個用戶也無需知道後端DB的實際地址,只需訪問RDC統一的host和port即可。
·高可靠性
HA是分布式系統的另一個主要目的,SAE同樣以提供服務的高可靠性為架構設計的重要指標。HA的實現途徑主要有兩個,一個是硬體保證,一個是架構的冗餘設計。
在SAE平台上,所有伺服器都是新浪標准采購的硬體設備,運行在國內最好機房內,並進行多機房容災,網路資源方面則享用門戶網站所使用的帶寬環境。另外,所有的硬體設備都有專門的運維部門負責,故障的響應速度和新浪內部服務一樣。
在架構設計上,SAE通過對所有服務都進行冗餘設計來提供服務的高可靠性。這里的服務可以分成計算型和數據型兩種類別討論:
針對計算型程序,冗餘設計就是程序在多節點運行。但這樣會帶來一致性問題,最主要的困擾就是選舉問題,如何在多個節點中選出一個主節點來執行。比如SAE上的分布式定時服務Cron,採用多點部署方式,多個計算節點相互隔離,通過時鍾同步服務同時觸發用戶設定的定時任務,但要求只能有一個節點負責執行。為了解決這個問題,SAE設計出了一套分布式鎖演算法來提供選舉服務。該演算法可以在犧牲某些特定條件下的一致性來提供比Paxos演算法更高的可靠性(3台機器在最高任意2台機器發生故障的情況下整個選舉過程仍然正常,而Paxos演算法最多容忍1台)。截止至2012年12月該演算法正在申請專利,並廣泛應用在SAE內部。
針對數據型服務,SAE主要是通過復制來保證服務的高可靠性。SAE上的數據存儲服務普遍採用被動復制和主動復制兩種方式。如SAE上MySQL之間的主從Binlog同步就是典型的被動復制,TaskQueue、DeferredJob等服務也採用被動復制的方式,用戶的任務描述會寫到到主內存級隊列中,主隊列利用後台線程將寫操作同步到從隊列上,一旦主隊列發生故障,從隊列會快速的切換為主隊列。另外SAE上也有部分服務採用主動復制(雙寫復制)的方式來保證HA,比如Cron,當用戶通過App的工程配置文件appconfig.yaml設定定時任務時,任務信息會以雙寫的方式寫到多個持久化DB中,以供後續的到時觸發。
另外,SAE在整體架構設計時,充分考慮服務之間的「優雅降級」,盡量降低服務之間的耦合度,我們要求任何一個服務都不要假設其他服務是可靠的。SAE平台上的所有服務均不存在單點設計,服務的平均HA在99.95%,即年平均服務不可用時間在4到5個小時之間。
線路特性
·平台出口IP:
220.181.129.126
220.181.129.121
220.181.136.229
220.181.136.230
http介面方需要IP授權可以進行相應的設置。
⑵ 微信開發必須用雲伺服器(SAE/BAE…)嗎,可不可以用Tomcat搭建的web伺服器
可以用和雲寶
⑶ 為什麼我的新浪雲(SAE)伺服器總是404錯誤
你本地的東西肯定有忘記提交的或者因為全線沒有提交上的。造成線上沒有報404錯誤
⑷ 新浪雲PythonSAE伺服器如何配置
微信公眾平台 PHP SDK使用說明
簡單的微信公眾平台 PHP SDK ,通過調用相應的介面,使你可以輕松地開發微信 App 。
測試方法如下:
1). Clone 或下載項目源碼,上傳至伺服器。
2).進入微信公眾平台,高級功能,開啟開發模式,並設置介面配置信息。
修改 URL 為example目錄下server.php 的實際位置,
修改 Token 為 weixin (可自行在 example目錄下server.php 中更改)。
3).發送消息測試。
下載應用源碼到本地
1).復制應用SVN地址
創建完成後,進入應用頁面,選擇「代碼管理」,把頁面最下面的該應用的SVN倉庫地址復制出來。
2).下載代碼
用TortoiseSVN軟體中的「Check out…」把代碼全部下載到本地。使用SVN的時候,需要輸入用戶名和密碼就是SAE注冊時候的安全郵箱和安全密碼。
設置公眾平台介面配置信息
1).查看token
打開example目錄下的server.php文件,翻到文件最下面的這個,就是Token了。
2).在公眾平台上填寫配置信息
點擊「開發者中心」->「修改配置」,
填寫URL為你的源碼中server.php文件的路徑,Token,這個是用來驗證的,當然,你可以修改一個自己的,英文或數字,3-32字元。
EncodingAESKey,點擊隨機生成就行。好了點擊「提交」。
完成後,點擊「啟用」。開啟伺服器,就可以了。
測試向微信公眾號發送消息
關注後發送信息測試下。可以查看代碼,對應的返回消息設置都在代碼里。
這樣,我們就可以通過修改應用中的相關代碼,來開發這個公眾號的一些其它功能。
⑸ 伺服器功能類型有哪些
伺服器類型有哪些?
機架式 刀片式 塔式 機櫃式
典型伺服器應用
辦公OA伺服器
ERP伺服器
WEB伺服器
資料庫伺服器
財務伺服器
郵件伺服器
列印伺服器
集群伺服器
無盤辦公系統
無盤網吧伺服器
無盤教學系統
視頻監控伺服器
流媒體伺服器
伺服器類型有哪些?
你好,伺服器的品牌有:
IBM Sun 惠普 戴爾 華碩 聯想
英特爾 浪潮 方正 清華同方 NEC
微星 長城 宏碁 金品 致榮 賽天
五舟 超毅定製者 曙光 ……
伺服器類型解釋及選購要考慮的因素
在信息化日益普遍的今天,若能擁有一台功能齊備,價格合理的伺服器,將是愈來愈多人關心的課題。昔日,許多人將選購一台好的PC,當作人生大事,但隨著時間流轉,科技日新月異,高性能的計算機設備不斷更新,價格也相對不斷合理化,現今無論企業或個人,都開始有機會接觸PC伺服器,企業為了節約成本,增加效率,必需使用伺服器,而個人因為資料儲存量變大,數字介面設備不斷增加,例如數字相片,圖形處理,高畫質游戲,數據備份…等的需求,也可能開始接觸入門級伺服器,因此,如何選購一台好的PC伺服器,將與許多人息息相關。
首先,我們必需了解何謂PC伺服器?所謂PC伺服器,即是Intel架構伺服器,與一些大型伺服器如Mainframe, Unix架構伺服器等不同,前者大多運行Windows或Linux等操作系統,使用較為普遍,後者多為專業用途,如銀行,大型製造業,物流業,證券…等行業使用,一般人較少有機會接觸到。一般而言,PC伺服器若以外型來分,大致可分為三類:
(一) 直立式伺服器(塔式伺服器):
為可獨立放置於桌面或地面的伺服器,大都具有較多的擴充槽及硬碟空間。無需額外設備,插上電即可使用,因此使用最為廣泛。
(二) 機架式伺服器:
為可裝上機櫃之伺服器,主要作用為節省空間,機台高度以1U為單位,1U約44mm,因空間較局限,擴充性較受限制,例如1U的伺服器大都只有1到2個PCI擴充槽。此外,散熱性能成為十分重要的因素,此時,各家廠商的功力就在此展現了。缺點是需要有機櫃等設備,多為伺服器用量較大的企業使用。
(三) 刀片伺服器:
可算是比機架式伺服器更節省空間的產品。主要結構為一大型主體機箱,內部可插上許多卡片,一張卡片即相當於一台伺服器。當然,散熱性在此非常重要,往往各家廠商都裝上大型強力風扇來散熱。此型伺服器雖然空間較節省,但光是主體機箱部份可能就所費不貲,除大型企業外較少使用。
了解了伺服器的種類之後,如何能選購一台適用的PC伺服器呢?我們可以從下列幾方面來考慮:
1. 穩定性能:
這是伺服器最重要的因素之一。然而,對許多人來說,「穩定」似乎是個十分抽象的名詞,似乎每一家伺服器廠商都在強調自己的產品十分穩定。其實,「穩定」並非完全沒有脈絡可尋,也並非貴的產品即是穩定者,筆者提供一些小技巧以供參考:
(1) 整體組裝品質: 通常較有規模的廠家所組裝的產品,有一定的品管及製造流程,因此,若可打開機箱觀察,便不難發現若是布線凌亂,機箱用料單薄,組件吻合度不佳或CPU, 內存及硬碟無原廠保固貼紙等,就絕對不該將之列入考慮范圍。
(2)良好的散熱設計: 伺服器大多需要長時間運作,因此良好的散熱性能是十分重要的。散熱性能可以由廠商數據,散熱風力強度或實際測試得知,散熱良好的伺服器往往有著較佳的穩定性能。
(3) 承諾售後服務內容: 對自己所出品的產品有信心的廠家,通常會提供較好的服務內容,
(4)整體口碑: 通常伺服器產品口碑十分重要,選擇有人推薦的品牌或市場上較老的品牌也是一種辦法。但是,有時也會有新的品牌或產品也十分優良的,這些就要靠一些專家的推薦或試用測試。
(5)權威性評比推薦: 一些權威性的雜志常常會有一些評比,也不失為一種參考依據,但最主要的還是要看一些實際運行性能測試,並多比較相關報導,才容易獲......
web伺服器有哪些類型
使用最多的 web server 伺服器軟體 有兩個:微軟的信息伺服器(iis),和Apache。
通俗的講,Web伺服器傳送(serves)頁面使瀏覽器可以瀏覽,然而應用程序伺服器提供的是客戶端應用程序可以調用(call)的方法(methods)。確切一點,你可以說:Web伺服器專門處理HTTP請求(request),但是應用程序伺服器是通過很多協議來為應用程序提供(serves)商業邏輯(business logic)。
Web伺服器可以解析(handles)HTTP協議。當Web伺服器接收到一個HTTP請求(request),會返回一個HTTP響應(response),例如送回一個HTML頁面。為了處理一個請求(request),Web伺服器可以響應(response)一個靜態頁面或圖片,進行頁面跳轉(redirect),或者把動態響應(dynamic response)的產生委託(delegate)給一些其它的程序例如CGI腳本,JSP(javaServer Pages)腳本,servlets,ASP(Active Server Pages)腳本,伺服器端(server-side)JavaScript,或者一些其它的伺服器端(server-side)技術。無論它們(譯者註:腳本)的目的如何,這些伺服器端(server-side)的程序通常產生一個HTML的響應(response)來讓瀏覽器可以瀏覽。
要知道,Web伺服器的代理模型(delegation model)非常簡單。當一個請求(request)被送到Web伺服器里來時,它只單純的把請求(request)傳遞給可以很好的處理請求(request)的程序(譯者註:伺服器端腳本)。Web伺服器僅僅提供一個可以執行伺服器端(server-side)程序和返回(程序所產生的)響應(response)的環境,而不會超出職能范圍。伺服器端(server-side)程序通常具有事務處理(transaction processing),資料庫連接(database connectivity)和消息(messaging)等功能。
雖然Web伺服器不支持事務處理或資料庫連接池,但它可以配置(employ)各種策略(strategies)來實現容錯性(fault tolerance)和可擴展性(scalability),例如負載平衡(load balancing),緩沖(caching)。集群特徵(clustering—features)經常被誤認為僅僅是應用程序伺服器專有的特徵。
應用程序伺服器(The Application Server)
根據我們的定義,作為應用程序伺服器,它通過各種協議,可以包括HTTP,把商業邏輯暴露給(expose)客戶端應用程序。Web伺服器主要是處理向瀏覽器發送HTML以供瀏覽,而應用程序伺服器提供訪問商業邏輯的途徑以供客戶端應用程序使用。應用程序使用此商業邏輯就象你調用對象的一個方法(或過程語言中的一個函數)一樣。
應用程序伺服器的客戶端(包含有圖形用戶界面(GUI)的)可能會運行在一台PC、一個Web伺服器或者甚至是其它的應用程序伺服器上。在應用程序伺服器與其客戶端之間來回穿梭(traveling)的信息不僅僅局限於簡單的顯示標記。相反,這種信息就是程序邏輯(program logic)。 正是由於這種邏輯取得了(takes)數據和方法調用(calls)的形式而不是靜態HTML,所以客戶端才可以隨心所欲的使用這種被暴露的商業邏輯。......
網路中的伺服器類型有哪些,他們各有什麼用途
web伺服器,用來提供網站,也就是我們現在上網看的網站都是web伺服器提供的。dns伺服器,提供網路dns,域名轉換。ftp伺服器,和web類似,它提供的是文件服務。資料庫伺服器,主要裝數據資料的,這個沒什麼好說的。dhcp伺服器,提供動態ip轉換。主要就這些了
常見的伺服器操作系統有哪些,各有什麼特點?
一般的,分為兩大類: 1、windows類:windows nt、windows 2000、windows 2003、windows 2008等,圖形界面友好,易操作 2、unix類:ibm aix、sco unix、sco unixware、各種linux等,多用戶功能強大,運行穩定,字元界面的不易操作,掌握起來有一定的難度
常用的應用伺服器有哪些,各有什麼功能
一般的,分為兩大類: 1、windows類:windows nt、windows 2000、windows 2003、windows 2008等,圖形界面友好,易操作 2、unix類:ibm aix、sco unix、sco unixware、各種linux等,多用戶功能強大,運行穩定,字元界面的不易操作,掌握起來有一定的難度
電腦伺服器是什麼 伺服器有什麼功能 終端是什麼
伺服器是一種高性能計算機,作為網路的節點,存儲、處理網路上80%的數據、信息,因此也被稱為網路的靈魂。做一個形象的比喻:伺服器就像是郵局的交換機,而微機、筆記本、PDA、手機等固定或移動的網路終端,就如散落在家庭、各種辦公場所、公共場所等處的電話機。我們與外界日常的生活、工作中的電話交流、溝通,必須經過交換機,才能到達目標電話;同樣如此,網路終端設備如家庭、企業中的微機上網,獲取資訊,與外界溝通、娛樂等,也必須經過伺服器,因此也可以說是伺服器在「組織」和「領導」這些設備。
伺服器的構成與微機基本相似,有處理器、硬碟、內存、系統匯流排等,它們是針對具體的網路應用特別制定的,因而伺服器與微機在處理能力、穩定性、可靠性、安全性、可擴展性、可管理性等耿面存在差異很大。尤其是隨著信息技術的進步,網路的作用越來越明顯,對自己信息系統的數據處理能力、安全性等的要求也越來越高,如果您在進行電子商務的過程中被黑客竊走密碼、損失關鍵商業數據;如果您在自動取款機上不能正常的存取,您應該考慮在這些設備系統的幕後指揮者————伺服器,而不是埋怨工作人員的素質和其他客觀條件的限制。
區域網中伺服器有哪些類型?
web伺服器提供網頁瀏覽的,
ftp伺服器提供文件上傳下載的,
dhcp伺服器提供動態分配ip地址的,
dns伺服器提供域名解析服務的,
proxy提供代理功能的,
email提供郵件服務的等等 這是按邏輯分的,其實這些服務可以在一台電腦上實現,當然要考慮訪問量大小
常用的web伺服器軟體有哪些
(1)ApacheApache是世界使用排名第一的Web伺服器軟體。它可以運行在幾乎所有廣泛使用的計算機平台上。Apache源於NCSAd伺服器,經過多次修改,成為世界上最流行的Web伺服器軟體之一。Apache取自"a patchy server"的讀音,意思是充滿補丁的伺服器,因為它是自由軟體,所以不斷有人來為它開發新的功能、新的特性、修改原來的缺陷。Apache的特點鄲簡單、速度快、性能穩定,並可做代理伺服器來使用。(2)IIS是英文Internet Information Server的縮寫,譯成中文就是"Internet信息服務"的意思。它是微軟公司主推的伺服器,最新的版本是Windows2008裡麵包含的IIS 7,IIS與Window Server完全集成在一起,因而用戶能夠利用Windows Server和NTFS(NT File System,NT的文件系統)內置的安全特性,建立強大,靈活而安全的Internet和Intranet站點。(3)GFEGoogle的web伺服器,用戶數量激增。目前緊逼iis。(4)Nginx不僅是一個小巧且高效的HTTP伺服器,也可以做一個高效的負載均衡反向代理,通過它接受用戶的請求並分發到多個Mongrel進程可以極大提高Rails應用的並發能力。(5)Ligd是由德國人 Jan Kneschke 領導開發的,基於BSD許可的開源WEB伺服器軟體,其根本的目的是提供一個專門針對高性能網站,安全、快速、兼容性好並且靈活的web server環境。具有非常低的內存開銷,CPU佔用率低,效能好,以及豐富的模塊等特點。Ligd 是眾多OpenSource輕量級的web server中較為優秀的一個。支持FastCGI, CGI, Auth, 輸出壓縮(output press), URL重寫, Alias等重要功能。(6)Zeus是一個運行於Unix下的非常優秀的Web Server,據說性能超過Apache,是效率最高的Web Server之一。(7)Sun的Java系統Web伺服器也就是以前的Sun ONE Web Server。主要出現在那些運行Sun的Solaris操作系統的關鍵任務級Web伺服器上。它最新的版本號是6.1,可以支持x86版本Solaris,Red Hat Linux,HP-UX 11i, IBM AIX,甚至可以支持Windows,但它的大多數用戶都選擇了SPARC版本的Solaris操作系統。(8)Resin提供了最快的jsp/servlets運行平台。在java和javascript的支持下,Resin可以為任務靈活選用合適的開發語言。Resin的一種先進的語言XSL(XML stylesheet language)可以使得形式和內容相分離。(9)Jetty是一個開源的servlet容器,它為基於Java的web內容,例如JSP和servlet提供運行環境。Jetty是使用Java語言編寫的,它的API以一組JAR包的形式發布。開發人員可以將Jetty容器實例化成一個對象,可以迅速為一些獨立運行(stand-alone)的Java應用提供網路和web連接。(10)BEA WebLogic是用於開發、集成、部署和管理大型分布式Web應用、網路應用和資料庫應用的Java應用伺服器。將Java的動態功能和Java Enterprise標準的安全性引入大型網路應用的開發、集成、部署和管理......
雲計算主要有3種服務類型,每種類型的功能和服務對象都是什麼?
軟體即服務(Software as a Service,縮寫SaaS)
軟體即服務是普通消費者可以感知到的雲計算,它的代表有Dropbox,還有國內用戶熟悉的網路雲、騰訊微雲等。這種雲計算最大的特徵就是消費者並不購買任何實體的產品,而是購買具有與實體產品同等功能的服務。
以前,我們是花錢購買的是伺服器上的存儲空間。現在,我們花錢購買的是Dropbox的存儲服務。表面上看,兩者沒有實際的區別。但是換一個角度來看,兩者卻完全不同。以前,我們花錢購買伺服器上的存儲空間,假設是空間容量是10G,我們是真正的買到了伺服器上的10G空間。如果我們不上傳文件的話,那麼伺服器上的這10G空間就是空的。現在,我們購買Dropbox的存儲服務,假設空間容量還是10G,我們卻並沒有真正的買到Dropbox伺服器上10G的空間,我們買到的是10G空間的服務。也就是說,如果我們上傳文件,Dropbox會將文件分開放在任何地方的任何伺服器上,如果我們不上傳文件,Dropbox的伺服器上就根本沒有屬於我們的任何空間。
平台即服務(Platform as a Service,縮寫PaaS)
與軟體即服務不同,平台即服務是面向開發者的雲計算。這種雲計算最大的特徵是它自帶開發環境,並向開發者提供開發工具包。它的代表有Google的GAE(Google App Engine),還有國內的網路的BAE、新浪的SAE等。
平台即服務與軟體即服務之間可以相互轉換。如果是消費者,購買Dropbox的服務,那Dropbox就是軟體即服務。如果是開發者,利用Dropbox提供的開發包藉助Dropbox的服務開發自己的服務,那麼Dropbox本身就是平台即服務,構築在Dropbox之上的開發者的服務就是軟體即服務。
以前,開發者如果要搭建一個網站,需要做很多准備工作,比如購買伺服器,安裝操作系統,搭建開發環境等等。現在,開發者如果購買平台即服務雲計算,就可以省去上面費時費力的准備工作,直接進行網站的開發。不僅如此,開發者還可以使用各種現成的服務,比如GAE會向開發者提供Google內部使用的先進的開發工具和領先的大數據技術。這一切都使得網站開發變得比以前輕松很多,這也是雲計算時代互聯網更加繁榮的原因之一。
基礎架構即服務(Infrastructure as a Service,縮寫IaaS)
基礎架構即服務一般面向的是企業用戶,它的代表有Amazon的AWS(Amazon Web Service),還有國內的PPPCloud等。
這種雲計算最大的特徵在於,它並不像傳統的伺服器租賃商一樣出租具體的伺服器實體,它出租的是伺服器的計算能力和存儲能力。AWS將Amazon計算中心的所有的伺服器的計算能力和存儲能力整合成一個整體,然後將其劃分為一個個虛擬的實例,每一個實例代表著一定的計算能力和存儲能力。購買AWS雲計算服務的公司就以這些實例就作為計量單位。
基礎架構即服務與平台即服務有顯著的區別,基礎架構即服務提供的只有計算能力和存儲能力的服務,平台即服務提供的除了計算能力和存儲能力的服務,還提供給開發者的完備的開發工具包和配套的開發環境。也就是說,開發者使用平台即服務時,可以直接開始進行開發工作。而使用基礎架構即服務時,則必須先進行如安裝操作系統、搭建開發環境等准備工作。
基礎架構即服務是雲計算的基石,平台即服務和軟體即服務構建在它的上面,分別為開發者和消費者提供服務,而它本身則為大數據服務。...
⑹ 開發微信公眾平台時必須使用新浪雲SAE或者百度雲BAE作為伺服器嗎可以使用騰訊雲伺服器嗎
什麼雲都可以。我之前用過騰訊雲後來用的阿里雲。開發主要是你最好有一個備案的網址。因為純IP的有些功能你是用不了。代碼的話你可以下載一下PHP版本的demo。然後做網址或者域名的解析,解析完之後,把你的代碼上傳到對應網址解析的文件夾。你先寫個小程序,可以測試一下網址訪問有沒有問題,最後再部署微信的其他功能。
⑺ 如何在新浪雲SAE創建JAVA/Android移動應用伺服器
在新浪雲SAE創建JAVA/Android移動應用伺服器
注冊登錄
進入雲應用控制台
創建應用,按照步驟一步一步來,這就不多說了
點擊你新創建的應用,來到管理界面
在這里可以看到Access key 和Secret key這兩個東西比較關鍵,待會會用到
之後來到代碼管理這里創建版本,當然沒有雲豆是創建不了的,所以先充值
上傳war包
這個比較關鍵,war包是指服務層連接資料庫層相應的代碼層,這里涉及到jdbc連接資料庫的三大關鍵,url,user,和password,
上傳好War包之後呢,接下來就是代碼管理下面的JVM管理,在這里可以設置虛擬機,也可以說是處理器的運行內存大小等相應資料
接下去就是快到最後一步了,去到MySQL進行資料庫sql語句上傳
導入自己的Mysql建表語句
啟動JVM
⑻ php部署到新浪雲sae不能正常運行了,求解
sae文檔
運行環境
基本環境
新浪雲 PHP 運行環境目前的 Web 伺服器使用的是:
CentOS-6.x
Apache-2.2.x
PHP-5.3.x / PHP-5.6.x
Web 伺服器運行在 64 位 Linux 環境下。
Apache 運行在 Prefork 模式下,即每個請求都會對應一個 Apache 進程,請求結束後該進程才能服務於下一個請求。平台通過模塊方式擴展了 Apache 和 PHP 的相關功能。
禁用函數和類
出於平台安全性考慮,我們禁用了以下函數和類,禁用的標准主要有四點:
出於對安全性的考慮
出於對資源管理的考慮
不常用的 API
我們提供更好替代方案的 API
禁用的函數:
symlink
link
exec
system
escapeshellcmd
escapeshellarg
passthru
shell_exec
proc_open
proc_close
proc_terminate
proc_get_status
proc_nice
dl
pclose
popen
stream_socket_server
stream_socket_accept
stream_socket_pair
stream_wrapper_restore
mb_send_mail
posix_kill
apache_child_terminate
apache_lookup_uri
apache_reset_timeout
apache_setenv
virtual
socket_create
socket_create_pair
realpath_cache_get
禁用的類:
SQLiteDatabase
SQLiteResult
SQLiteUnbuffered
SQLiteException
沙箱
代碼和數據的隔離:每個應用在運行期間,只能「看」到自己的代碼和數據,即 A 應用無法訪問 B 應用的代碼和數據。注意,這里提到的在 Web 伺服器上的數據,往往指一些中間處理過程的臨時數據,並非最終落地的數據,比如用戶上傳照片會臨時存儲到 TmpFS。
連接數的隔離:我們知道,程序寫的不好,很容易導致阻塞,並進一步導致連接數的飆升。單個應用過多佔用 Apache 連接數,原因往往是多方面的,應用請求外部資源被阻塞是一個最為常見的因素,另外應用頁面過大瀏覽器下載慢也是常見因素之一。公有雲平台同一時刻往往運行著大量的應用,如果某一應用出現連接數異常,最直接的後果是整個平台上的所有應用都將陷入癱瘓。新浪雲平台目前有設置「應用最大 HTTP 並發連接數」,目前這個值是 500,如果應用平均單個請求處理時長是 100ms,那麼該應用每秒的 HTTP 並發連接將可以到達 5000,每天的請求超過 1 億沒有問題。但如果您的應用平均每個請求處理時長 2 秒,那麼該應用每秒的 HTTP 並發連接只能到達 250,每天支撐的請求數將在千萬。總體而言,盡量迅速處理完請求對應用是有利的,而且也是平台所鼓勵的。
內存隔離:目前新浪雲平台上對單個 PHP 腳本的處理,設置了 128MB 的上限 (max_memory,ini_set 不可修改),我們認為這個設置是一個相對很高的值,可以說能夠滿足絕大部分應用的需求。設想一台伺服器 8G 內存,如果每個 PHP 處理都消耗 64M 內存,那麼該伺服器最多隻能同時運行 128 個 PHP 腳本。新浪雲引入了」應用最大並發內存數「的概念,目前的設置是 4GB。如果應用程序單個請求的內存消耗平均在 16MB,那麼可同時運行 256 個請求,這和上面的並發連接數的設定是基本一致的。
CPU 隔離:這主要是通過新浪雲的配額系統來達到 CPU 時間的隔離。每個應用都有 CPU 時間消耗的分鍾速度限制,避免了某一應用過多非法獲取 CPU 資源導致其它應用響應慢的問題。
目前新浪雲平台上允許的「單請求最大存活時長」是 300 秒 。
註解
當應用並發超過限制,系統會返回 508 錯誤,並顯示 Connections out of quota。當應用內存佔用超過限制,系統會返回 509 錯誤,並顯示 Memory usage out of quota。
環境變數
您可以通過列印 PHP 的全局變數$_SERVER來獲取跟新浪雲相關的環境變數信息,每個環境變數的信息如下:
變數名
說明
HTTP_APPNAME 標志該請求屬於哪個應用
HTTP_APPVERSION 標志該請求對應該應用的哪個版本
HTTP_ACCESSKEY 該應用訪問各種服務資源的帳號
HTTP_SECRETKEY 該應用訪問各種服務資源的密碼
HTTP_APPCOOKIE 一些和 app 管理相關信息
警告
不要直接列印出$_SERVER變數,這樣可能會造成應用的 AccessKey 和 SecretKey 的泄露。為了應用的安全考慮,請保護好自己的 AccessKey 和 SecretKey。
常用字體文件路徑:
constantSAE_Font_Sun
宋體字體文件路徑
constantSAE_Font_Kai
楷體字體文件路徑
constantSAE_Font_Hei
文泉驛正黑字體文件路徑
constantSAE_Font_MicroHei
文泉驛微米黑字體文件路徑
全局函數
is_https()
判斷客戶端是以 http 還是以 https 的方式連接。
返回:
如果是 https 連接返回 true,否則返回 false。