本文介紹如何基於各種雲服務優雅且低成本地搭建個人網站,涉及的雲產品有雲服務器、SSL、企業郵箱、對象存儲、CDN、雲函數、API網關、雲監控等。
概述
如今雲服務提供商們提供了大量涵蓋計算、網絡、存儲等方面的雲服務,其中一些雲產品功能強大,如果能善加利用可以大幅降低開發和運維的成本。下面以基於騰訊雲搭建的個人網站為例,對網站整體的架構進行介紹。
網站目前的主要功能是個人博客,後續可以擴展如個人網盤等其他應用。當前架構圖如下:
一、基礎設施
1.雲服務器CVM
雲服務器使用的是CVM,1核2G,下行帶寬1Mbps,這個配置用來搭建起步階段的個人博客是完全夠用了,購買學生機或者在活動時購買價格也比較便宜。
有了服務器資源就可以開始博客搭建,我選的博客系統是極簡主義的Typecho,安裝過程可以參考這篇博文,主要是在服務器上安裝nginx、mysql、php以及typecho的源碼。
2.域名
註冊 – 備案 – 解析
服務器創建后同時會分配一個公網ip,但是為了便於分享和傳播,建議進行域名註冊。註冊后需要進行備案,現在的備案流程也已經簡化為在小程序上操作,省去了原有的幕布拍照環節,前後大概1-2周時間就可以完成備案。之後在控制台進行域名解析,即綁定域名和服務器ip,注意對帶或不帶www前綴的域名都要進行解析,完成解析后就可以在瀏覽器通過域名來訪問網頁了。
主域名的確定
為了便於SEO,建議根據個人喜好確定一個主域名,因為搜索引擎對於帶www和不帶www前綴的地址是當成兩個網站分開計算權重的。國內網站一般帶www,而國外網站(如github、stackoverflow、leetcode)等是不帶www的。我這裡是選擇不帶www的地址(zhayujie.com),並在nginx中配置對帶www的訪問301重定向到不帶www上,以集中權重。
企業郵箱
擁有域名后,還可以註冊以自己域名為後綴的企業郵箱,基礎版免費使用且賬號數量無上限,再也不用擔心郵箱號不夠用了(如微信公眾平台註冊),郵箱格式類似於 zyj@zhayujie.com。
3.全站HTTPS
為了網站安全以及利於SEO,建議支持https協議訪問網站。可以申請免費的SSL證書,將證書和私鑰放置到服務器,並在nginx中開啟並配置SSL。同樣為了避免分散權重,可以把http訪問的請求301重定向到https上。以我的網站為例,帶不帶www以及是否使用https都會統一訪問https://zhayujie.com/。
二、基於COS和CDN的圖床
1.對象存儲COS
由於服務器下行帶寬有限,如果圖片存儲於我們自己的服務器,出現併發訪問時可能導致帶寬超限,訪問速度下降。所以可以把圖片存儲到 COS(Cloud Object Storage)中,搭建自己的圖床,這樣當博客同步到其他博客平台時,也便於對圖片資源進行統一管理。
COS的使用比較簡單,類似於網盤,在存儲桶中可以建立樹狀目錄結構,每個存儲桶(bucket)會分配一個公網域名,其下的文件通過https://{bucket}/{dir}/{filename}的形式進行訪問。但在博客中直接使用該鏈接是不妥的,因為一旦我們遷移到其他雲服務商或者切換其他的存儲方式了,原有的鏈接就失效了,一一修改成本太高。好在cos支持配置自定義域名,可以通過類似http://{domain}/{dir}/{filename}的地址進行訪問。
2.內容分髮網絡CDN
COS的自定義源站域名不支持https訪問,為了不影響我們的全站https,並且同時提升訪問速度和減少流量成本,可以配合CDN服務,開啟自定義CDN加速域名,具體步驟見文檔。
可以選取一個子域名作為cdn自定義域名,添加CNAME解析,這樣通過自定義域名會首先訪問cdn邊緣服務器,如果未命中則回源到cos。例如上面的圖片我配置的地址是https://blog.cos.zhayujie.com/web/blog-cloud-arch.jpg。
三、基於Serverless的消息服務
1.雲函數SCF
在博客開發過程中會遇到一些發送消息的功能,比如讀者回復文章時給筆者發送通知,筆者回複評論時給讀者發送通知,博文發布時給訂閱的讀者發送通知等等。這種消息通知的功能是很適合單獨拆分出來形成一個消息服務的,如果寫在博客源碼中則復用性差(網站下其他應用要發送消息時需要重寫),而單獨部署服務又會增加運維的成本(如果服務掛掉怎麼辦),這時候可以考慮serverless(無服務器)的架構,僅將我們的核心代碼片段託管給雲服務商。
騰訊雲提供了雲函數SCF(Serverless Cloud Function),是一種FaaS技術。對於消息通知這種異步、無狀態的功能,很適合使用雲函數編寫,比如接收到請求後向指定接收人發送一封郵件。
2.API網關
雲函數的觸發方式有多種,最常用的有定時任務和API網關。由於消息通知是通過事件觸發而不是定時觸發,所以選擇API網關,創建了觸發器后便可從公網直接訪問該函數,與Nginx反向代理的作用類似。
API網關的域名是隨機生成的,不利於對未來變化的擴展,故同樣綁定自定義域名,使用https://{domain}/{function}形式的地址觸發函數。例如我的郵件發送函數地址配置為https://apigw.zhayujie.com/commentNotice,在業務代碼中只需向該地址發送POST請求即可觸發郵件投遞。
四、監控、快照和統計
1.監控告警
服務器的監控和告警同樣很重要,有助於我們及時發現並排查問題。監控部分一般直接在控制台的 雲服務器 – 實例 – 監控 中進行查看,有對不同時間周期和時間粒度下的CPU、內存、帶寬、磁盤等的詳細數據。
告警部分則在雲監控中配置,可以配置多種報警策略如對cpu、內存、帶寬等指標超出閾值後進行告警,以及一些機器故障事件(如ping不可達、機器重啟等)。對COS的報警同樣可以在此配置。告警渠道可以是微信、郵件和短信。
2.快照
為了防止服務器硬盤中的數據遭到攻擊或被誤刪,可以在 雲服務器 – 快照 控制台中設置進行快照備份,並且支持定期快照策略,設置每隔一段時間自動創建新的快照。
3.訪問統計
對網站的訪問情況進行統計分析有利於我們優化網站內容和體驗。對於訪問數據統計使用的是百度統計,使用埋點方式接入,可以查看每一個訪客的地域,來源,搜索詞,轉化等信息,統計訪問量趨勢。
對於搜索引擎工具使用的是百度站長工具,用於提交頁面收錄,查看索引量、抓取頻次等數據。
總結
以上就是一個功能齊全的個人博客的搭建過程,大致計算一下成本,雲服務器活動期購買一百一年,域名一般幾十塊一個,而COS、CDN、SCF等產品都有大量的免費額度,且在建站初期流量費用同樣是微乎其微,所以總體算下來成本是極低的。個人開發者可以把個人網站當做一個產品來做,思考如何利用好公有雲的各種雲產品資源來提升用戶體驗,提高開發效率,降低運維成本。
原文鏈接:https://zhayujie.com/blog-cloud-arch.html
本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理
【其他文章推薦】
※網頁設計公司推薦不同的風格,搶佔消費者視覺第一線
※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益
※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面
※南投搬家公司費用需注意的眉眉角角,別等搬了再說!
※新北清潔公司,居家、辦公、裝潢細清專業服務
※教你寫出一流的銷售文案?
美國特斯拉(Tesla)電動車掀起熱潮,讓電動車前景備受關注,而鴻海攜手特斯拉於 2016 年正式搶攻中低價電動車市場商機的計畫,也漸漸露出曙光。鴻海董事長郭台銘表示,鴻海不會生產新台幣 1 至 2 百萬元的高價車,而會鎖定功能型的發財車(商業用車)或一般車種,定位在 1.5 萬美元,相當於不到新台幣 50 萬元的產品。 郭台銘提出的新報價,相較於先前穆斯克(Elon Musk)提及、售價約為 3.5 萬美元的第三代電動車,價格壓縮剩不到一半。法人指出,鴻海鎖定中低價電動車商機,不但可以拉高特斯拉的電動車產能,也可望協助特斯拉由高價車種轉向中低價市場。 針對電動車即將引爆的商機,郭台銘指出,電動車是新的能源科技,必須和雲端、交通、智慧城市作整合。此外,郭台銘表示,鴻海投入純電動車研發多年,現在是要展現實力的時候,已選定台中興建從電池到純電動車組裝的生產基地,把台灣當成實驗戰場,引進最好的科技與模式。 (圖片來源:)
美國電動車大廠 Tesla 加州組裝廠首度停工,要將機器人導入生產線,以便加快電動車的生產速度,同時準備生產 Model X 休旅車。 Tesla 發言人表示,Fremont 廠的生產線 21 日已開始重新配置,兩周內會恢復運作,目標是產能能因此提高 25%。這次投入 1 億美元升級生產線,新增 25 個機器人,同時也整修產線與廠房。 Tesla 執行長穆斯克曾說,希望今年 Model S 交貨量至少能達 3.5 萬部,比 2013 年大幅增加約 56%。 (圖片來源:)
電動車在特斯拉的帶動下已經開始起步,然而,若說到減少碳排放,汽車比起飛機可說小巫見大巫,那麼是否應該發展「電動飛機」?鋰電池的重量讓大部分飛機製造商很快就會打消這個念頭,不過,空中巴士卻認為電動飛機還是有發展空間,在一年一度航空界的盛會英國汎保羅國際航空展(Farnborough International Airshow )上,空中巴士展示其電動飛機原型機 E-Fan 2.0。 E-Fan 2.0 有兩具電動馬達帶動兩組可變頻渦扇推進器,總耗電為 60 千瓦,內建 12 cell 的鋰聚合物電池,電池以被動式氣冷散熱,此外機輪也有動力馬達,在起飛時,可先由機輪如電動車一般加速,到時速 60 公里時,才改用渦扇推進器推進,可大幅減少起飛過程所需的能量,全機重量 500 公斤,可搭乘 2 人,但是這次航空展所展出的原型機版本仍然非實用版本,因為一次升空只能飛上 1 個小時,再加上 15 分鐘的安全保留時間。 
