Web Function能力升級(jí),原生支持WebSocket協(xié)議

來(lái)源: 騰訊云云函數(shù)
作者:April
時(shí)間:2021-10-11
16940
云函數(shù)Web Function能力推出后,對(duì)于原生框架的無(wú)改造直接部署,在性能和開發(fā)流程上,都受到了眾多開發(fā)者的好評(píng)。在一期能力的基礎(chǔ)上,Web Function現(xiàn)已支持WebSocket協(xié)議,實(shí)現(xiàn)客戶端和函數(shù)運(yùn)行的服務(wù)端間建立長(zhǎng)連接。

云函數(shù)Web Function能力推出后,對(duì)于原生框架的無(wú)改造直接部署,在性能和開發(fā)流程上,都受到了眾多開發(fā)者的好評(píng)。在一期能力的基礎(chǔ)上,Web Function現(xiàn)已支持WebSocket協(xié)議,實(shí)現(xiàn)客戶端和函數(shù)運(yùn)行的服務(wù)端間建立長(zhǎng)連接。

01.

工作原理

1633942999(1).png

1.服務(wù)啟動(dòng)與連接建立

與HTTP協(xié)議一樣,Web函數(shù)支持在官方或自定義的運(yùn)行環(huán)境中,使用啟動(dòng)文件啟動(dòng)WebSocket服務(wù)器,并在指定端口(9000)上進(jìn)行監(jiān)聽,通過前端API網(wǎng)關(guān)提供的WS路徑,接收到客戶端連接請(qǐng)求后,完成連接的建立。

連接建立后,客戶端及服務(wù)端按WebSocket協(xié)議進(jìn)行正常通訊。

2.WebSocket連接生命周期

在Web函數(shù)的WebSocket支持的情況下,WebSocket一次連接的生命周期,等同于一次函數(shù)調(diào)用請(qǐng)求;WS連接建立過程等同于請(qǐng)求發(fā)起階段,WS連接斷開等同于請(qǐng)求結(jié)束。

02.

控制臺(tái)部署體驗(yàn)

1.創(chuàng)建函數(shù)

在通過控制臺(tái)創(chuàng)建函數(shù)時(shí),可以通過選擇自定義創(chuàng)建、選擇Web函數(shù)、展開高級(jí)配置來(lái)看到協(xié)議支持選項(xiàng)。

1633943033(1).png

通過勾選WebSocket支持,配置好WebSocket空閑超時(shí)時(shí)間,來(lái)完成WebSocket協(xié)議支持。

1633943053(1).png

同時(shí)在勾選WebSocket支持后,API網(wǎng)關(guān)的協(xié)議支持同樣將自動(dòng)切換為WS&WSS支持,創(chuàng)建的API網(wǎng)關(guān)所提供的鏈接地址,也將是WebSocket地址。

1633943075(1).png

在完成創(chuàng)建后,WebSocket的協(xié)議支持不可取消,但可以根據(jù)需求修改空閑超時(shí)時(shí)間配置。

03.

示例代碼

目前可以通過如下的Demo代碼來(lái)創(chuàng)建函數(shù),體驗(yàn)WebSocket效果:

·Python示例:使用WebSockets庫(kù)實(shí)現(xiàn)WebSocket服務(wù)端;

Python示例獲取地址:https://github.com/awesome-scf/scf-python-code-snippet/tree/main/ws_python

·Node.js示例:使用WebSockets庫(kù)實(shí)現(xiàn)WebSocket服務(wù)端;

Node.js示例獲取地址:https://github.com/awesome-scf/scf-nodejs-code-snippet/tree/main/ws_node

·WebSockets庫(kù):https://github.com/websockets/ws

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來(lái)自于騰訊云云函數(shù),本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
相關(guān)文章
騰訊云數(shù)據(jù)庫(kù)PostgreSQL全面支持PG 17
騰訊云數(shù)據(jù)庫(kù)PostgreSQL全面支持PG 17
即日起,騰訊云PostgreSQL全面支持PostgreSQL 17.0。所有用戶可使用大版本升級(jí)能力升級(jí)至最新的PostgreSQL 17.0進(jìn)行體驗(yàn),也可以在產(chǎn)品購(gòu)買頁(yè)直接購(gòu)買。
騰訊云
云服務(wù)
2024-12-152024-12-15
高可用這個(gè)問題,加機(jī)器就能解決?
高可用這個(gè)問題,加機(jī)器就能解決?
互聯(lián)網(wǎng)服務(wù)的可用性問題是困擾企業(yè)IT人員的達(dá)摩克利斯之劍:防于未然,體現(xiàn)不出價(jià)值。已然發(fā)生,又面臨P0危機(jī)。就更別提穩(wěn)定性建設(shè)背后顯性的IT預(yù)算問題與隱性的人員成本問題。
騰訊云
云服務(wù)
2024-11-252024-11-25
TDSQL TDStore引擎版替換HBase:在歷史庫(kù)場(chǎng)景中的成本與性能優(yōu)勢(shì)
TDSQL TDStore引擎版替換HBase:在歷史庫(kù)場(chǎng)景中的成本與性能優(yōu)勢(shì)
HBase憑借其高可用性、高擴(kuò)展性和強(qiáng)一致性,以及在廉價(jià)PC服務(wù)器上的低部署成本,廣泛應(yīng)用于大規(guī)模數(shù)據(jù)分析。
騰訊云
云服務(wù)
2024-11-042024-11-04
復(fù)雜查詢性能弱,只讀分析引擎來(lái)幫忙
復(fù)雜查詢性能弱,只讀分析引擎來(lái)幫忙
隨著當(dāng)今業(yè)務(wù)的高速發(fā)展,復(fù)雜多表關(guān)聯(lián)的場(chǎng)景越來(lái)越普遍。但基于行式存儲(chǔ)的數(shù)據(jù)庫(kù)在進(jìn)行復(fù)雜查詢時(shí)性能相對(duì)較弱。
騰訊云
云服務(wù)
2024-11-022024-11-02
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
個(gè)人VIP
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家