無服務(wù)器云函數(shù)(Serverless Cloud Function,SCF)是騰訊云為企業(yè)和***們提供的無服務(wù)器執(zhí)行環(huán)境,幫助您在無需購買和管理服務(wù)器的情況下運行代碼。您只需使用平臺支持的語言編寫核心代碼并設(shè)置代碼運行的條件,即可在騰訊云基礎(chǔ)設(shè)施上彈性、安全地運行代碼。SCF 是實時文件處理和數(shù)據(jù)處理等場景下理想的計算平臺。
功能
騰訊云無服務(wù)器云函數(shù)提供了多種功能,使您的代碼在騰訊云基礎(chǔ)設(shè)施上彈性、安全地運行。
代碼管理
您可以通過上傳代碼使用騰訊云無服務(wù)器云函數(shù),云函數(shù)提供多種代碼管理方式:
- 通過控制臺編輯代碼,這種方式適用于沒有外部依賴的業(yè)務(wù)代碼,直接在控制臺上編輯代碼。
- 上傳代碼 ZIP 包,將所有依賴和代碼打包成 ZIP 并上傳至騰訊云無服務(wù)器云函數(shù),平臺將自動抽取入口函數(shù)并執(zhí)行。
- 通過 COS 管理代碼 ZIP 包,將所有依賴和代碼打包成 ZIP 并上傳至騰訊云對象存儲,并在云函數(shù)中指定代碼所在 Bucket 和 文件對象,平臺將自動下載函數(shù)代碼。
支持多開發(fā)環(huán)境
無服務(wù)器云函數(shù)支持多種開發(fā)環(huán)境,您可以選擇適合您自身的開發(fā)語言,完成函數(shù)編寫。目前已支持的語言包括:Python 2.7 & 3.6、Node.js 6.10 & Node.js 8.9、Java 8、Php 5 & Php 7。
自動伸縮
無服務(wù)器云函數(shù)支持毫秒級別的實時彈性伸縮,完全根據(jù)請求量擴(kuò)容或縮容。動態(tài)負(fù)載均衡將請求分發(fā)至后端近乎無限的函數(shù)實例上,完全無需任何手動配置和操作,滿足并發(fā)量從 0 到成千上萬的不同場景。
事件觸發(fā)
無服務(wù)器云函數(shù)支持設(shè)置多種觸發(fā)器來決定代碼何時運行,在滿足觸發(fā)器條件(Event)時,代碼自動開始運行,并根據(jù)請求自動調(diào)度基礎(chǔ)設(shè)施資源實現(xiàn)自動伸縮和回收,提高計算效率。目前支持以下觸發(fā)器:
- 對象存儲 COS:支持在特定的 COS Bucket 操作文件上傳或文件刪除等事件時觸發(fā)云函數(shù),可以對文件進(jìn)行更多操作。例如:在圖片上傳到特定 Bucket 時,對其進(jìn)行壓縮或裁剪以適應(yīng)不同分辨率的移動終端。
- 定時器:支持定時觸發(fā)函數(shù),助力用戶構(gòu)造更加靈活的自動化控制系統(tǒng)。
- 手動觸發(fā):支持通過 云 API /控制臺 手動觸發(fā)函數(shù),幫助用戶更便捷、更清晰地調(diào)試和使用云函數(shù)。
- CMQ 主題隊列觸發(fā):由 CMQ Topic 主題隊列內(nèi)的消息觸發(fā),利用 CMQ 消息隊列解耦事件,可以幫助用戶和更多應(yīng)用完成聯(lián)動。
- Ckafka 消息隊列觸發(fā):由 Ckafka Topic 主題隊列內(nèi)的消息觸發(fā),對消息進(jìn)行處理,可以幫助用戶實現(xiàn)日志聚合、消息存儲等。
- API 網(wǎng)關(guān)觸發(fā):支持 API 網(wǎng)關(guān)中的 API 配置后端為無服務(wù)器云函數(shù),在 API 接收到客戶端請求時,觸發(fā)無服務(wù)器云函數(shù),并將處理結(jié)果作為 API 響應(yīng)返回給客戶端。
監(jiān)控和日志
無服務(wù)器云函數(shù)提供精細(xì)的日志記錄,您可方便地查看函數(shù)的運行狀況,并對代碼進(jìn)行調(diào)試、測試和審計;支持相關(guān)的監(jiān)控指標(biāo)上報,幫助您快速了解函數(shù)的整體運行概況,同時您還可自定義云函數(shù)的監(jiān)控指標(biāo),對云函數(shù)進(jìn)行更深入、更廣泛的監(jiān)控。