緣起
本文來自 Serverless 社區用戶「乂乂又又」投稿
我最早接觸 Serverless 大概是在 18 年 6 月,那時候我在阿里云的學生機剛好到期,那臺機子上我有裝寶塔面板,然后在上面只放了一個 Typecho 的個人博客站,好像這臺服務器似乎一直都是被我拿來當作虛擬主機用,最多也只是登上寶塔面板清一下記憶體這樣子,所以,在我阿里云一年的學生機到期之后,我就果斷選擇了放棄續費服務器,從那時起我就變成了一個徹底的 Severlesser,
首先是之前的靜態網頁的問題,這個解決起來比較簡單,隨便找一個物件存盤或者 pages 服務就可以搞定,
這里我是把自己那些靜態網頁都放到了 Coding pages 上,除了某些時候某些地區某些運營商的網路訪問會不穩定之外,其他的一切都讓我覺得 coding 的 pages 服務都是做的非常棒的,
然后是 Typecho 博客問題,這個問題還是比較讓人頭大的,因為像這種動態的博客系統是很少有 pages 服務支持的,所幸在那個時候 coding 有一個動態 pages 的服務是允許個人發布動態博客的,包括 Wordpress 和 Typecho 之類,只可惜現在 coding 已經把動態 pages 的服務給去掉了,而我的之前放在 coding 上的動態博客現在也已經被歸檔了,

我也錯過了 cloud studio 升級的提醒通知,直到舊版 cloud studio 完全下線我才在郵箱的垃圾郵件里找到當時的升級通知,這下子我就再也找不到存放著我動態博客的空間入口了,里面的檔案也搶救不回來了 T^T
有趣的是,在我的空間被歸檔后,仍然可以正常訪問原來空間里的博客,只是再也找不到也進不去原來的空間了,于是自己趕緊在網頁登錄我的 Typecho 博客后臺,把博客資料備份好匯出,也算是一場有驚無險的風波了,就這樣,自己沒有服務器也過的好好的,
發展
似乎一切都很平靜的,自己 19 年開始自學 Flutter,整天忙著寫 widget,維護 state,時不時看看 Github trending,逛逛dribbble,刷刷 V 站之類,期間自己也獨立開發上線了一些小應用,純粹出于自己的興趣,
- 一款簡單的計算器應用

- 一個自動選課應用

- 一個記單詞應用

但是這些應用都有一個特點,那就是沒有自己的后端,只能向外展示頁面,這就比較雞肋了,所以我也一直在尋找合適的云資料庫服務,想要給自己的應用增加后端的能力,方便后期管理會員資訊之類,
期間我有用過 Bmob,感徑訓可以,主要是接入方便,管理起來資料也比較簡單,而且 Bmob 的服務非常好,我在他們 SDK 群里提問題,都會有人及時處理,比較省心,
這個階段我是啥服務都嘗試過,域名在西部數碼,新網,阿里云,騰訊云都有注冊,物件存盤有用七牛云 cos 和騰訊云 cos,主機用過小學生賣的跑路虛擬空間,阿里云學生機,騰訊云學生機,視頻點播服務用過樂視云和七牛云,CDN 用過知道創宇的加速樂,360CDN,騰訊云 CDN,移動用戶資料資訊統計有用百度移動資訊統計,Growing IO,友盟...
總之我用的服務都很雜,缺少一個東西把他們都整合起來,后面我會講到這個東西其實就是騰訊云開發,可能你覺得我扯了半天都還沒扯到 Serverless,不要著急哈,馬上就到今天的主角 Serverless了
Serverless 全新的世界
上面我扯了那么一大堆是想告訴大家,在沒有 Serverless 之前,自己開發上線一款應用,其實大多數的精力都是用在這些第三方服務的選擇和適配上的,搞來搞去基本上都是在瞎折騰,應用開發效率非常差的,
這樣的話,作為對比,在這一節里,我就結合自己的開發經歷跟大家講下
Serverless 到底是啥,怎么用,用起來究竟有多爽?
首先我是在 Bmob 翻看官網首頁的時候,看到他們有一個叫云函式的服務,乍一聽云函式這個詞我也是有些摸不著頭腦的,云函式是什么?云上跑的函式?我本地函式跑的好好的,干嘛要放到云上跑?
但是出于好奇我還是點進去看了下云函式到底是個啥東東,原來云函式真的就是放在云上的函式而已,它可以在本地通過 http 請求來呼叫,但看起來還是蠻不錯的,剛想上手實操一波,發現這個云函式服務是付費的,
額,這個就,好吧,窮就一個字,我只說一次,當然是果斷關閉頁面,忘掉它了,嘿嘿~ 就這樣我與云函式的第一次見面就以不戰而退告終了~
直到后來我一個同學告訴我,騰訊云有一個云函式的服務可以用來解決前端跨域的問題,而且每月都有很多的免費額度!
哈哈,頃刻,大喜,遂上手之,

在《萬物皆可 Serverless 之免費搭建自己的不限速大容量云盤(5TB)》里,我用騰訊云函式搭建了一個 20TB 的 OneDrive 網盤

在《萬物皆可 Serverless 之使用云函式 Timer 觸發器實作每天自動定時打卡》里,我寫了個每日健康資訊自動定時打卡的云函式

在《萬物皆可Serverless之使用SCF+COS快速開發全堆疊應用》里,我用云函式做了個影視搜索的全堆疊應用
前后用時 3 天,第一天寫云函式后端介面,第二天從零入門學習了一下前端,第三天開始整合前后端并上線發布應用

在《萬物皆可Serverless之使用SCF+COS免費運營微信公眾號》里,我用云函式給自己的公眾號后臺做了個訊息自動回復系統

在《萬物皆可Serverless之使用SCF快速部署驗證碼識別介面》里,我用云函式把本地的驗證碼識別程式快速上線發布成 api,方便呼叫,整個識別函式從本地到發布到線上可用,也就用時 10 分鐘以內吧

在《萬物皆可Serverless之Kaggle+SCF端到端驗證碼識別從訓練到部署》里,我繼續嘗試使用 Kaggle+SCF 從訓練到部署發布一個通用驗證碼識別模型,真正的驗證碼識別從訓練到部署一條龍服務~

在《萬物皆可Serverless之借助微信公眾號簡單管理用戶激活碼》里,我嘗試使用云函式和物件存盤在自己的微信公眾號后臺管理會員激活碼,在前面 SCF+COS 實踐的基礎上,稍微修改并重新上線發布了一下云函式,用時 10 分鐘以內

在《萬物皆可Serverless之使用SCF+COS給未來寫封信》里,我使用云函式和物件存盤制作了一個類似給未來寫封信應用的全堆疊網頁應用,在前面 SCF+COS 系列實踐的基礎上,我稍微修改并重新上線發布了一下云函式,整個應用從制作到上線發布可用,用時不超過 30 分鐘

在《萬物皆可Serverless之在Flutter中快速接入騰訊云開發》里,我嘗試在 Flutter 中接入騰訊云開發加速應用上云,為自己的 Flutter 應用實作了完整的后端能力

在《萬物皆可Serverless之在Flutter中寫一個Dart原生騰訊云物件存盤插件》里,我嘗試給 Flutter 寫了一個物件存盤的 dart 原生插件,整個插件可以直接跑在 dart VM 里,本地除錯十分方便!
總之,正如本系列文章標題所言,萬物皆可 Serverless,過去那些需要自己購買配置服務器才能用的運行的應用,在 Serverless 云函式里也可以實作,那么,親愛的你,為什么還要自己去購買,配置,維護服務器呢?
關于 Serverless 的一切
What is Serverless?
乍一聽 Serverless 還是比較懵逼的,說實話之前我也不清楚最近那么火的 serverless 技術究竟是啥,其實簡單來說 serverless 就是單純的不需要服務器的服務,比如域名決議、物件存盤、CDN 這些,不需要你自己購買服務器就可以獲得的服務,當然這里不需要服務器是指你自己不用掏錢去買配置運維服務器,但是整個服務的運行還是得靠你的 serverless 服務提供商通過跑在服務器上應用來解決的,
看起來有點繞哈,那我再來打個比方吧,我們把服務器比作房子,你要在服務器上跑的應用比作你在這間房子里要做的買賣,傳統的自行搭建服務器運行服務的模式:假如你要開一家店做買賣,你就得先租一間房子,然后自己裝修房子,費好大勁裝修完房子才能開始做買賣,而且這個房子你從裝修開始就得一直按月給房租,即使你在這個房子里什么都不做也要給錢,
Serverless 運行服務的模式:那么 Serverless 就是,我這里的房子已經裝修好了,你直接過來做買賣就可以,而且你也不用按月交錢,我只在你做買賣的時候才計費,你做一個小時買賣那我就收你一個小時的服務費,你做一個小時買賣,休息十小時,那我還是只收你一個小時的服務費,怎么樣是不是很良心,
這么看其實用電話卡套餐月租和按量付費這種關系來做比喻會更合適一點,可以看到,Serverless 對比傳統服務器應用模式最大的優點就是方便、省錢和免運維,
Why Serverless?
多快好省,但用難回,

正如 Serverless 開發人員所言 —— Serverless架構是必然,Serverless 開發應用超級快,超級簡單,Serverless 直接面向業務開發,每個前端工程師都可以是全堆疊的,Serverless 可以更多快好省的開發應用
serverless.com 的CEO Austen Collins 也曾經說過:
Serverless is the future of the cloud. Serverless is like superpowers for developers.
—— Austen Collins (serverless.com CEO)
Serverless 是云服務的未來!Serverless 賦予開發者超能力!
以前我沒親自體驗過 Serverless 不會相信這句話,覺得是在吹牛或者不知道他在說些什么,但是現在我只覺得十分的震撼,感覺 Serverless 像是為開發者打開了一扇全新世界的大門,
Serverless 重新賦予了開發者跨越前后端,跨越語言的超級能力,
(沒錯,這句是我說的,不對你過來打我啊~)
這是未來應用開發的大勢所趨,下一代的應用將是 Serverless 的,借助 Serverless,后端開發者可以快速開發上線發布自己的應用,借助 Serverless,前端開發者可以直接獲得后端的全部能力,快速開發全堆疊應用!所以我向所有開發者推薦 Serverless,無論你是前端或是后端開發者,你都可以通過 Serverless 獲取到更加強大、更加便捷的能力,
相信我,你會愛死 Serverless 的,它會徹底顛覆你的多端應用開發體驗,
How Serverless?
看到這里的話,相信你已經被 Serverless 深深吸引了,所以現在抽出一點點時間快速上手體驗一下 Serverless?

我推薦大家可以先去看一下 serverless.com 中國區官網和 Serverless 中文社區,在這里你可以詳細了解關于Serverless的一切,也可以體驗一些關于 Serverless 的最佳實踐,
而且就在前不久騰訊 Serverless Framework 正式發布,這是由騰訊云提供的專為中國開發人員定制的 Serverless Framework 版本,為 Serverless 應用程式開發提供了頂級的順暢體驗,
試用地址:https://github.com/serverless/components/blob/master/README.cn.md
Serverless 面向未來的運維方式

網路應用正在慢慢改變世界,但是大多數互聯網企業仍然無法順暢交付工程,更不用說敏捷開發和快速迭代了,所以我們必須從根本上簡化應用工程的交付和操作,
這就是無服務器架構所提供的 serverless 建立在下一代公共云服務之上,該服務僅在使用時自動擴容和收費,當規模, 所用容量和成本管理實作自動化時,可節省 99% 的成本管理,
無服務器架構是全新的,因此我們需要改變先前對老架構和作業流的看法,serverless 的目標是以一種簡單,強大 而優雅的使用體驗為開發者,團隊提供開發和運行 serverless 應用程式所需的所有工具,
serverless 加油鴨!
Serverless Framework 30 天試用計劃
我們誠邀您來體驗最便捷的 Serverless 開發和部署方式,在試用期內,相關聯的產品及服務均提供免費資源和專業的技術支持,幫助您的業務快速、便捷地實作 Serverless!
詳情可查閱:Serverless Framework 試用計劃
One More Thing
3 秒你能做什么?喝一口水,看一封郵件,還是 —— 部署一個完整的 Serverless 應用?
復制鏈接至 PC 瀏覽器訪問:https://serverless.cloud.tencent.com/deploy/express
3 秒極速部署,立即體驗史上最快的 Serverless HTTP 實戰開發!
傳送門:
- GitHub: github.com/serverless
- 官網:serverless.com
歡迎訪問:Serverless 中文網,您可以在 最佳實踐 里體驗更多關于 Serverless 應用的開發!
推薦閱讀:《Serverless 架構:從原理、設計到專案實戰》
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/3907.html
標籤:其他
上一篇:TCP 重置攻擊的作業原理
