[前言]: css
七牛目前已服務超過15萬家企業和開發者用戶,這些用戶的應用場景也各有不一樣,推出這個系列的文章,但願經過對這些場景的全面解析,能夠幫助開發者們減小在雲服務使用過程當中的彎路。 html
前兩期咱們重點說了: 七牛雲存儲
今天,咱們要介紹的是App分發、HTML5以及Web等應用場景。 服務器
1、HTML5 類應用 微信
利用微信朋友圈進行傳播的HTML5小遊戲正逐漸被行業重視,且將PC端的經典產品改編成H5遊戲也或將成爲一種趨勢。彷佛在微信內此路仍可成型——開發多款不一樣類型的小遊戲,利用話題性和病毒性進行傳播彙集在本身的平臺,利用各類渠道進行傳播,將用戶導向本身。 網絡
而七牛平臺也在過去一年裏有幸見證了這一類應用的崛起,而且承載了不少此類的應用的雲服務。據咱們發現,HTML5這類應用對雲服務比較關注的有兩點: 工具
一、HTML5應用中的圖片資源、html、css資源在移動端的訪問速度效果如何 post
七牛CDN對移動、聯通、電信這些主要運營商的網絡都有普遍的節點覆蓋,訪問速度經過17ce、阿里測、奇雲測,均可以對各地區訪問資源的速度進行測試,同時七牛除了提供HTTP域名,還提供了HTTPS域名,能夠給須要SSL通道訪問的Web應用提供一條優秀的鏈路選擇。
2、若是應用中的資源發生更新,多久能夠訪問到最新的資源
因爲七牛的CDN加速依賴CDN節點上的緩存,因此資源在七牛的空間上更新後,若是直接訪問原有資源的URL,並不能立刻獲取的最新的文件,可是能夠經過URL+?v=20150115這樣的形式獲取到最新的資源,因此建議在資源更新以後帶上問號參數對資源進行訪問。
七牛平臺上已經積累了不少專一於HTML5的開發者,其中不乏已經在該圈頗具之名度的,好比MAKA,將來應用、醋溜新媒體等。以醋溜新媒體爲例,之前每次出現微信祈福的H5頁面,流量會攀升至幾千萬,服務器的壓力很大,接入七牛後的雲存儲服務後,UV在短期內就平穩地達到了1.5億,在用戶體驗方面有了顯著的改善。
2、Web應用
這裏指的Web應用主要指的是在網頁端對七牛資源進行上傳、處理、訪問的應用,覆蓋面也比較廣,和以前的圖片類、音視頻類應用也有交集的部分,可是也有其特殊之處,通常來講會涉及下面幾個方面。
一、網頁客戶端的上傳是否有相應地工具可以減小開發量
經過網頁客戶端上傳七牛,七牛官方提供了JavaScrpt的SDK,利用Plupload上傳組件對客戶端資源進行上傳,固然上傳時涉及安全機制的部分還得依賴服務端的程序,七牛也提供了豐富的服務端SDK供客戶選擇。工具方面,七牛也收集了一些爲七牛定製的上傳工具的插件,開發成本大大減小。
二、網頁客戶端的上傳速度可否保證
七牛針對客戶端除了默認提供的上傳加速服務,另外也提供了斷點續上傳的接口,來保證大文件上傳的穩定性和高效性,具體實現細節在SDK中均有實現。
此外,七牛雲存儲還有一個獨一無二的特性——支持用戶將文件從客戶端直傳到雲服務器中。
常見的雲存儲上傳文件流程通常以下:
用戶 =>應用服務器 =>雲存儲提供商
這樣多了一次上傳的流程,和本地存儲相比,會相對慢一些。
而七牛提供了客戶端自傳的功能,流程能夠改爲:
用戶 =>七牛 =>應用服務器
用戶直接上傳到七牛的服務器,經過DNS智能解析,七牛會選擇到最近的最合適的ISP服務商節點,速度會比原先快不少,上傳成功之後,七牛的服務器使用回調功能,只須要將很是少的數據(好比key)post迴應用服務器,應用服務器進行保存便可。
3、App分發類應用
App分發的應用場景分兩個方面,即上傳和下載。而上傳通常都是客戶的服務端直接控制,因此用戶關注的點主要在於下載。
一、下載速度可否保證,文件下載的完整性可否保證
下載速度基本依賴於請求下載端的網絡情況,七牛不會限制下載帶寬,下載的完整性必定程度上也依賴下載端是否進行了完整的下載。若是出現App下載後安裝失敗,那麼首先要作的是,測試在相同網絡情況下不一樣設備的下載安裝狀況、以及不一樣網絡情況下相同設備的安裝狀況。
二、App版本更新後,可否當即訪問到最新的資源,可否預推新的資源
App這樣的資源建議直接在文件的文件名中帶上版本號,而不是更新資源後使用相同的文件名,由於不能避免會有部分CDN節點上存在舊資源的緩存。可是也能夠經過七牛qboxrsctl/qrsctl 工具進行302的重定向設置,將相同URL重定向到不一樣的資源上。
三、iOS 7.1以上的企業級APP發佈須要https連接,七牛是否提供。
只要成爲七牛的標準用戶,均可以直接在七牛的空間設置的域名設置中,建立一個https的連接,manifest.plist文件中,只要將URL設置爲七牛提供的https的文件外鏈,便可輕鬆經過APP STORE的SSL證書審覈。
[舉例說明]客戶案例之豌豆莢
豌豆莢就屬於應用場景比較典型的App分發類應用,固然目前豌豆莢業務擴展到了壁紙、小說還有視頻,這些項目和以前咱們介紹的圖片展現類、音視頻播放類應用場景差很少。豌豆莢通常經過下面幾個方面來使用七牛:
一、APK文件、圖片、視頻資源的上傳,這個上傳通常不是豌豆莢用戶直傳七牛,由於豌豆莢須要對用戶的上傳文件進行一些審覈,而後由豌豆莢的業務服務器對資源進行上傳。一樣,七牛不會限制上傳的帶寬,只要豌豆莢的機房出口帶寬有多大,咱們就能有多大的入口帶寬。
二、APK文件的下載一樣也是經過七牛的CDN加速通道,加速效果能夠任意下載一個豌豆莢的連接就能體會到,不過豌豆莢的文件名自己會帶上版本號,因此新的版本發佈不會存在訪問文件仍然是舊文件的現象,這個也是七牛推薦的更新文件的方式。固然若是必須使用相同的文件名,那麼就建議用3xx的重定向服務了。
七牛上的應用場景隨着用戶的增多也愈來愈豐富,咱們還在繼續挖掘有意思的場景,但願以不一樣的形式展示給開發者。