本文來自 Serverless 社區用戶「乂乂又又」投稿前端
我最先接觸 Serverless 大概是在 18 年 6 月,那時候我在阿里雲的學生機恰好到期,那臺機子上我有裝寶塔面板,而後在上面只放了一個 Typecho 的我的博客站,好像這臺服務器彷佛一直都是被我拿來看成虛擬主機用,最多也只是登上寶塔面板清一下內存這樣子,因此,在我阿里雲一年的學生機到期以後,我就果斷選擇了放棄續費服務器。從那時起我就變成了一個完全的 Severlesser。python
首先是以前的靜態網頁的問題,這個解決起來比較簡單,隨便找一個對象存儲或者 pages 服務就能夠搞定。git
這裏我是把本身那些靜態網頁都放到了 Coding pages 上,除了某些時候某些地區某些運營商的網絡訪問會不穩定以外,其餘的一切都讓我以爲 coding 的 pages 服務都是作的很是棒的。github
而後是 Typecho 博客問題,這個問題仍是比較讓人頭大的,由於像這種動態的博客系統是不多有 pages 服務支持的,所幸在那個時候 coding 有一個動態 pages 的服務是容許我的發佈動態博客的,包括 Wordpress 和 Typecho 之類,只惋惜如今 coding 已經把動態 pages 的服務給去掉了,而個人以前放在 coding 上的動態博客如今也已經被歸檔了。數據庫
我也錯過了 cloud studio 升級的提醒通知,直到舊版 cloud studio 徹底下線我纔在郵箱的垃圾郵件裏找到當時的升級通知。這下子我就再也找不到存放着我動態博客的空間入口了,裏面的文件也搶救不回來了 T^Texpress
有趣的是,在個人空間被歸檔後,仍然能夠正常訪問原來空間裏的博客,只是再也找不到也進不去原來的空間了。因而本身趕忙在網頁登陸個人 Typecho 博客後臺,把博客數據備份好導出,也算是一場有驚無險的風波了。就這樣,本身沒有服務器也過的好好的。後端
彷佛一切都很平靜的。本身 19 年開始自學 Flutter,成天忙着寫 widget,維護 state,時不時看看 Github trending,逛逛dribbble,刷刷 V 站之類,期間本身也獨立開發上線了一些小應用,純粹出於本身的興趣。api
可是這些應用都有一個特色,那就是沒有本身的後端,只能向外展現頁面,這就比較雞肋了。因此我也一直在尋找合適的雲數據庫服務,想要給本身的應用增長後端的能力,方便後期管理會員信息之類。跨域
期間我有用過 Bmob,感受還能夠,主要是接入方便,管理起來數據也比較簡單,並且 Bmob 的服務很是好,我在他們 SDK 羣裏提問題,都會有人及時處理,比較省心。瀏覽器
這個階段我是啥服務都嘗試過,域名在西部數碼,新網,阿里雲,騰訊雲都有註冊,對象存儲有用七牛雲 cos 和騰訊雲 cos,主機用太小學生賣的跑路虛擬空間,阿里雲學生機,騰訊雲學生機,視頻點播服務用過樂視雲和七牛雲,CDN 用過知道創宇的加速樂,360CDN,騰訊雲 CDN,移動用戶數據信息統計有用百度移動信息統計,Growing IO,友盟...
總之我用的服務都很雜,缺乏一個東西把他們都整合起來,後面我會講到這個東西其實就是騰訊雲開發。可能你以爲我扯了半天都還沒扯到 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 仍是比較懵逼的,說實話以前我也不清楚最近那麼火的 serverless 技術到底是啥。其實簡單來講 serverless 就是單純的不須要服務器的服務,好比域名解析、對象存儲、CDN 這些,不須要你本身購買服務器就能夠得到的服務,固然這裏不須要服務器是指你本身不用掏錢去買配置運維服務器,可是整個服務的運行仍是得靠你的 serverless 服務提供商經過跑在服務器上應用來解決的。
看起來有點繞哈,那我再來打個比方吧,咱們把服務器比做房子,你要在服務器上跑的應用比做你在這間房子裏要作的買賣,傳統的自行搭建服務器運行服務的模式:假如你要開一家店作買賣,你就得先租一間房子,而後本身裝修房子,費好大勁裝修完房子才能開始作買賣,並且這個房子你從裝修開始就得一直按月給房租,即便你在這個房子裏什麼都不作也要給錢。
Serverless 運行服務的模式:那麼 Serverless 就是,我這裏的房子已經裝修好了,你直接過來作買賣就能夠,並且你也不用按月交錢,我只在你作買賣的時候才計費,你作一個小時買賣那我就收你一個小時的服務費,你作一個小時買賣,休息十小時,那我仍是隻收你一個小時的服務費,怎麼樣是否是很良心。
這麼看其實用電話卡套餐月租和按量付費這種關係來作比喻會更合適一點。能夠看到,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 的,它會完全顛覆你的多端應用開發體驗。
看到這裏的話,相信你已經被 Serverless 深深吸引了,因此如今抽出一點點時間快速上手體驗一下 Serverless?
我推薦你們能夠先去看一下 serverless.com 中國區官網和 Serverless 中文社區,在這裏你能夠詳細瞭解關於Serverless的一切,也能夠體驗一些關於 Serverless 的最佳實踐。
並且就在前不久騰訊 Serverless Framework 正式發佈。這是由騰訊雲提供的專爲中國開發人員定製的 Serverless Framework 版本,爲 Serverless 應用程序開發提供了頂級的順暢體驗。
試用地址:https://github.com/serverless/components/blob/master/README.cn.md
網絡應用正在慢慢改變世界,可是大多數互聯網企業仍然沒法順暢交付工程,更不用說敏捷開發和快速迭代了。因此咱們必須從根本上簡化應用工程的交付和操做。
這就是無服務器架構所提供的 serverless 創建在下一代公共雲服務之上,該服務僅在使用時自動擴容和收費。當規模, 所用容量和成本管理實現自動化時,可節省 99% 的成本管理。
無服務器架構是全新的,所以咱們須要改變先前對老架構和工做流的見解。serverless 的目標是以一種簡單,強大 而優雅的使用體驗爲開發者,團隊提供開發和運行 serverless 應用程序所需的全部工具。
serverless 加油鴨!
咱們誠邀您來體驗最便捷的 Serverless 開發和部署方式。在試用期內,相關聯的產品及服務均提供免費資源和專業的技術支持,幫助您的業務快速、便捷地實現 Serverless!
3 秒你能作什麼?喝一口水,看一封郵件,仍是 —— 部署一個完整的 Serverless 應用?
複製連接至 PC 瀏覽器訪問:https://serverless.cloud.tencent.com/deploy/express
3 秒極速部署,當即體驗史上最快的 Serverless HTTP 實戰開發!
傳送門:
- GitHub: github.com/serverless
- 官網:serverless.com
歡迎訪問:Serverless 中文網,您能夠在 最佳實踐 裏體驗更多關於 Serverless 應用的開發!