版權聲明:本文由孫峯原創文章,轉載請註明出處:
文章原文連接:https://www.qcloud.com/community/article/143node
來源:騰雲閣 https://www.qcloud.com/communityweb
創了業才發現,如今(2016年)可沒幾年前那麼簡單了。幾年前創業作App就比如造輛破車,放在高速公路上能跑就行。如今可沒這麼簡單了,用戶更挑剔了,功能低級的沒興趣,內容少的沒看頭,打開慢的沒耐心,由於用戶已經享受了頂尖App(微信、QQ等)的極致體驗,怎麼忍受得了垃圾體驗。因此一開始你就得造個寶馬奔馳,不然用戶看到周圍都是好車,誰上你這破車。數據庫
覓知音
光靠本身有限的力量是沒法在一開始就造輛好車的,咱們必需要站在巨人的肩膀上。幸運的是,我選擇了雲計算,經過將應用構建在騰訊雲上,解決了App卡慢的問題,實現了架構的動靜分離,可以輕鬆應對海量併發,大大提升了開發效率,節省了個人創業成本。個人想說App(說煩惱、訴衷腸、覓知音)在短短一個多月便上線了,蘋果Appstore與安卓騰訊應用寶皆可下載。編程
起初,產品體驗差,卡到心塞,慢到無奈
先放上一開始想說App的架構圖,簡單說下初始架構的狀況,服務器用的業內某家雲廠商,配置是1核1G內存1M帶寬,服務器端語言是node.js,數據庫是MongoDB,App端語言是React-Native,facebook推出,通吃安卓和蘋果,原生的體驗web的開發效率。服務器
數字標記的地方是性能瓶頸、體驗差的地方。微信
- 服務器性能不行,配置過低
- 瀏覽圖片2~3秒才能顯示,聲音要3~5秒才能播放,視頻要5~7秒才能播放,並且斷斷續續
- 上傳圖片和聲音要4~6秒才能完成
後來拿幾家廠商的雲服務器作了一下測試對比,發現騰訊雲服務器不管在響應時間仍是吞吐量上效果都更好,因此就果斷更換爲騰訊雲服務器。網絡
動靜分離,速度升級,就近讀取,飛通常的感受
更換了騰訊雲服務器,平均響應時間下降了0.5~1秒鐘,但還須要從根上對架構進行升級。升級的架構以下圖架構
- 靜態文件(圖片、音頻、視頻、HTML、CSS、JS等)所有放在COS裏,避免了本身服務器讀取大量靜態文件時的I/O瓶頸,並且極大的下降了帶寬壓力(只要傳輸動態數據如JSON)。萬象優圖和微視頻是種特殊的COS,專門用來存儲圖片和視頻的,並且還有強大的處理功能。
- 瀏覽圖片、播放音頻/視頻、上傳圖片/音頻都是經過騰訊雲CDN加速實現的,這樣不管用戶身處何方,都能從最近的節點進行讀取和上傳,大大縮短了用戶等待時間。
通過動靜分離及CDN加速後的響應/上傳效果以下圖。併發
響應時間下降6~9倍,體驗大大提高。性能
功能強大的萬象優圖和微視頻,極大地提升開發效率
一個好的App必需要將圖片玩的爐火純青,由於圖片充斥着App的每一個角落,好比用戶頭像、用戶發表的圖片等等。但圖片的壓縮、上傳、處理、瀏覽、識別等是很是麻煩的,若是本身開發的話須要花大把的時間,沒有必要,創業初期時間就是金錢。因而我選擇了用萬象優圖。萬象優圖已經涵蓋圖片上傳、下載、存儲、圖像處理、圖片識別等功能,使用起來也很簡單。
- 瀏覽圖片。只須要給一個圖片的url。
- 上傳圖片。先從服務器傳個簽名,而後客戶端上傳圖片時帶着簽名便可
- 處理圖片。例如圖片url加個相似'?imageMogr2/scrop/80x80'的後綴(此後綴含義爲基於人臉識別執行智能裁剪80x80),輕鬆簡單的就完成了複雜的圖像處理。
總結與展望
有句話特別想跟你們分享,咱們確實生活在一個偉大的時代,在這個時代,像我同樣千千萬萬個沒有任何背景和資源的創業人,也能實現夢想。由於咱們站在別人的肩膀上,好比咱們選擇雲上創業,那麼創業就再也不是從0到1,而是從0.9到1。
好比像我一開始道行淺,不少常識性的東西都不懂,因此常常打電話問騰訊雲客服,好在你們都挺耐心,給我答疑解惑。在這個過程當中,我本身的編程水平也在不斷進步。這裏也必須MARK一下,做爲小小創業者,我申請了騰訊雲的雲+創業計劃,扶持仍是很給力的。
最後,想說App初版本的架構以下圖。
這樣的架構能夠輕鬆應付海量用戶的海量併發了。我打算在接下來的版本中接入即時聊天和直播的功能,屆時個人App即可與市面上成熟的產品一較高下了,盡情期待吧。
做者介紹
孫峯,想說App創始人,2014年畢業於蘇州大學車輛工程專業,在創業以前前後在電梯公司及環衛車輛公司作機械工程師。2015年底我失業又失戀了,受到《社交網絡》電影中扎克伯格的故事影響,在沒有任何互聯網經驗和背景的條件下,毅然決然地踏上了互聯網創業之路。