超碰在线91,国产第1页,国产精品99,最近中文字幕av

<video id="z2k50"><ins id="z2k50"></ins></video><small id="z2k50"><pre id="z2k50"><samp id="z2k50"></samp></pre></small>

    1. <video id="z2k50"><ins id="z2k50"></ins></video>

        函數(shù)計(jì)算: 讓小程序開(kāi)發(fā)進(jìn)入 Serverless 時(shí)代

        發(fā)布時(shí)間:2024-08-20
        云計(jì)算
        點(diǎn)擊下載《不一樣的 雙11 技術(shù):阿里巴巴經(jīng)濟(jì)體云原生實(shí)踐》
        本文節(jié)選自《不一樣的 雙11 技術(shù):阿里巴巴經(jīng)濟(jì)體云原生實(shí)踐》一書(shū),點(diǎn)擊上方圖片即可下載!
        作者 | 吳天龍(木吳)阿里云函數(shù)計(jì)算技術(shù)專(zhuān)家
        導(dǎo)讀:小程序是輕量級(jí)的快速迭代的移動(dòng)應(yīng)用,對(duì)開(kāi)發(fā)者從開(kāi)發(fā)到上線的效率提出了更高的要求。使用函數(shù)計(jì)算,開(kāi)發(fā)者無(wú)需關(guān)心后端服務(wù)的搭建運(yùn)維,只需要編寫(xiě)函數(shù)就能夠?yàn)樾〕绦蛱峁┓€(wěn)定可靠并且彈性伸縮的服務(wù)。并且隨著小程序訪問(wèn)量增加,函數(shù)計(jì)算能夠自動(dòng)快速地彈性伸縮,即使應(yīng)對(duì) 雙11 活動(dòng)高峰也能夠如絲般順滑。
        自 2017 年第一批小程序上線以來(lái),越來(lái)越多的移動(dòng)端應(yīng)用以小程序的形式呈現(xiàn)。小程序擁有觸手可及、用完即走的優(yōu)點(diǎn),這大大降低了用戶(hù)的使用負(fù)擔(dān),使小程序得到了廣泛的傳播。在阿里巴巴,小程序也被廣泛地應(yīng)用在淘寶/支付寶/釘釘/高德等平臺(tái)上,例如今年 雙11,大家在淘寶/天貓上參加的活動(dòng),大部分都是通過(guò)小程序提供的。
        一個(gè)小程序可以分為客戶(hù)端和服務(wù)端:客戶(hù)端包括界面的展示和交互邏輯;服務(wù)端則包括數(shù)據(jù)的處理和分析。
        為了支撐大量的小程序,平臺(tái)在服務(wù)端面臨的挑戰(zhàn)有:
        大量的小程序是不活躍的,傳統(tǒng)的至少一臺(tái)服務(wù)器的方式會(huì)造成資源浪費(fèi);
        在活動(dòng)高峰期小程序的調(diào)用量激增,要求服務(wù)端能夠快速進(jìn)行彈性伸縮。
        針對(duì)小程序場(chǎng)景,阿里云提供了完整的小程序解決方案:小程序云。資源的有效利用和彈性伸縮,是小程序云提供的核心能力之一,而這背后依托的,就是阿里云函數(shù)計(jì)算服務(wù)。函數(shù)計(jì)算是一個(gè)全托管 serverless 計(jì)算服務(wù),讓開(kāi)發(fā)者無(wú)需管理服務(wù)器等基礎(chǔ)設(shè)施,只需編寫(xiě)和上傳代碼,就能夠構(gòu)建可靠、彈性、安全的服務(wù)。下面就以 雙11 小程序場(chǎng)景為例,解析函數(shù)計(jì)算在彈性伸縮上的核心技術(shù)。
        小程序架構(gòu)
        讓我們先來(lái)看一下淘寶小程序的技術(shù)架構(gòu)是什么樣的:
        用戶(hù)在手機(jī)淘寶點(diǎn)擊店鋪活動(dòng),就進(jìn)入了小程序。界面及交互由小程序客戶(hù)端提供;
        在用戶(hù)參與活動(dòng)過(guò)程中,需要向服務(wù)端請(qǐng)求或者發(fā)送數(shù)據(jù)時(shí),由客戶(hù)端發(fā)起函數(shù)調(diào)用;
        函數(shù)調(diào)用先經(jīng)過(guò)淘寶接入網(wǎng)關(guān),進(jìn)行必要的鑒權(quán)認(rèn)證,然后調(diào)用到小程序云;
        用戶(hù)的函數(shù)代碼執(zhí)行在小程序云中,用戶(hù)可以實(shí)現(xiàn)自定義的業(yè)務(wù)邏輯。
        利用小程序云提供的豐富的擴(kuò)展能力,用戶(hù)可以方便地構(gòu)建完整的電商應(yīng)用:
        數(shù)據(jù)存儲(chǔ):存儲(chǔ)結(jié)構(gòu)化的數(shù)據(jù);
        文件存儲(chǔ):存儲(chǔ)文本/圖片/視頻等文件;
        電商服務(wù):獲取用戶(hù)信息/創(chuàng)建支付交易;
        統(tǒng)計(jì)分析:自動(dòng)統(tǒng)計(jì)小程序的使用信息及用戶(hù)分析,支撐商業(yè)決策。
        可以看到,函數(shù)是整個(gè)小程序的業(yè)務(wù)邏輯的核心,它將云端的基礎(chǔ)能力組合串聯(lián)起來(lái),對(duì)客戶(hù)端提供服務(wù)能力。如果函數(shù)能力成為瓶頸,將影響整個(gè)小程序的運(yùn)行。
        在這樣的架構(gòu)下,要支撐大量的小程序,需要函數(shù)能夠做到:
        一是隨時(shí)在線以支持小程序即開(kāi)即用;
        二是彈性伸縮以應(yīng)對(duì)小程序訪問(wèn)突增。為了做到以上兩點(diǎn),讓我們看一下函數(shù)計(jì)算的技術(shù)架構(gòu):
        函數(shù)計(jì)算架構(gòu)
        其中幾個(gè)核心組件的功能如下:
        api 服務(wù):函數(shù)計(jì)算的網(wǎng)關(guān),實(shí)現(xiàn)鑒權(quán)/流控等功能;
        資源調(diào)度:為函數(shù)調(diào)用分配管理計(jì)算資源,負(fù)責(zé)調(diào)度效率和性能;
        函數(shù)執(zhí)行引擎:執(zhí)行函數(shù)代碼的環(huán)境,做到安全和隔離。
        基于這個(gè)架構(gòu),函數(shù)計(jì)算是如何解決上面提到的小程序平臺(tái)的挑戰(zhàn)呢?接下來(lái)我們逐一分析。
        1. 冷啟動(dòng)
        當(dāng)用戶(hù)創(chuàng)建函數(shù)上傳代碼時(shí),函數(shù)計(jì)算只是將代碼包保存到 oss,并沒(méi)有分配計(jì)算資源,因此函數(shù)計(jì)算可以支撐海量的小程序。
        當(dāng)函數(shù)第一次被調(diào)用時(shí),函數(shù)計(jì)算會(huì)分配計(jì)算資源、下載函數(shù)代碼、加載并執(zhí)行代碼。這一過(guò)程稱(chēng)為冷啟動(dòng),函數(shù)計(jì)算通過(guò)大量的優(yōu)化,將系統(tǒng)側(cè)的冷啟動(dòng)時(shí)間優(yōu)化到 200ms 以?xún)?nèi)。因此即使是冷的小程序,在初次調(diào)用時(shí)也能夠做到快速的即開(kāi)即用。
        2. 彈性伸縮
        當(dāng)小程序持續(xù)調(diào)用過(guò)程中,負(fù)載逐漸上升或者突然升高的情況下,函數(shù)計(jì)算是如何應(yīng)對(duì)的呢?
        函數(shù)計(jì)算的“資源調(diào)度”模塊,會(huì)精確管理每個(gè)實(shí)例的狀態(tài),當(dāng)請(qǐng)求到來(lái)時(shí),它首先檢查是否有空閑的實(shí)例可以服務(wù),如果沒(méi)有請(qǐng)求就會(huì)進(jìn)入等待隊(duì)列,當(dāng)有空閑的實(shí)例釋放出來(lái)時(shí),請(qǐng)求就能夠被及時(shí)處理。
        同時(shí),調(diào)度器還會(huì)在后臺(tái)創(chuàng)建新的實(shí)例,當(dāng)新的實(shí)例準(zhǔn)備好后,也能夠服務(wù)請(qǐng)求。在這種策略下,能夠做到在負(fù)載以 2 倍的速度增長(zhǎng)情況下,請(qǐng)求的 p95 延時(shí)是穩(wěn)定的。優(yōu)化細(xì)節(jié)可以參考我們的博客文章。
        上面是某個(gè)淘寶小程序的調(diào)用量和延時(shí)監(jiān)控?cái)?shù)據(jù)。
        可以看到,在整點(diǎn)活動(dòng)時(shí),tps 出現(xiàn)了瞬間的高峰,但是 p95 延時(shí)卻沒(méi)有明顯的波動(dòng)。這是因?yàn)楹瘮?shù)計(jì)算在請(qǐng)求高峰來(lái)臨時(shí),能夠快速地彈性伸縮創(chuàng)建新的實(shí)例,同時(shí)利用已有資源做一定的緩沖,使得整個(gè)攀升的過(guò)程能夠比較平滑。
        3. 預(yù)留實(shí)例
        對(duì)于一些“秒殺”的場(chǎng)景,要求瞬間提供大量的計(jì)算資源。此時(shí)靠實(shí)時(shí)的彈性伸縮是不夠的:
        一是冷啟動(dòng)的時(shí)間即使是 200ms,對(duì)于秒殺場(chǎng)景也太慢了;
        二是底層的計(jì)算資源在擴(kuò)容時(shí)也會(huì)有流控。
        針對(duì)這種場(chǎng)景,函數(shù)計(jì)算提供了預(yù)留實(shí)例的功能。使用預(yù)留實(shí)例,用戶(hù)可以為一些可預(yù)測(cè)的活動(dòng)提前預(yù)留好資源,徹底消除冷啟動(dòng)。
        和傳統(tǒng)的基于服務(wù)器的做法不同,用戶(hù)不需要按峰值來(lái)預(yù)留資源,而是可以結(jié)合預(yù)留實(shí)例和按量實(shí)例的混合模式:請(qǐng)求先被預(yù)留實(shí)例處理,當(dāng)預(yù)留實(shí)例用滿(mǎn)時(shí),會(huì)自動(dòng)彈性伸縮出更多的按量實(shí)例來(lái)處理請(qǐng)求。
        由于有一定的資源基礎(chǔ),結(jié)合調(diào)度優(yōu)化,按量實(shí)例的冷啟動(dòng)所產(chǎn)生的影響就被大大減小了。這就是利用函數(shù)計(jì)算的彈性伸縮能力,在性能和成本之間達(dá)到很好的平衡。
        總結(jié)
        小程序是輕量級(jí)的快速迭代的移動(dòng)應(yīng)用,對(duì)小程序開(kāi)發(fā)者的開(kāi)發(fā)效率有很高的要求。
        小程序上線后隨著訪問(wèn)量的增加或者活動(dòng)期間的訪問(wèn)突增,對(duì)后端服務(wù)的穩(wěn)定和彈性也是一個(gè)很大的考驗(yàn)。函數(shù)計(jì)算上傳代碼即可運(yùn)行,極大地提高了后端服務(wù)的開(kāi)發(fā)效率;混合模式的彈性伸縮,輕松應(yīng)對(duì)負(fù)載變化。這些特點(diǎn)使得函數(shù)計(jì)算成為支撐小程序平臺(tái)的很好的選擇。
        對(duì)函數(shù)計(jì)算感興趣的開(kāi)發(fā)者,可以點(diǎn)此免費(fèi)試用)!
        本書(shū)亮點(diǎn)
        雙11 超大規(guī)模 k8s 集群實(shí)踐中,遇到的問(wèn)題及解決方法詳述
        云原生化最佳組合:kubernetes 容器 神龍,實(shí)現(xiàn)核心系統(tǒng) 100% %u4e0a云的技術(shù)細(xì)節(jié)
        雙 11 service mesh 超大規(guī)模落地解決方案
        “阿里巴巴云原生關(guān)注微服務(wù)、serverless、容器、service mesh 等技術(shù)領(lǐng)域、聚焦云原生流行技術(shù)趨勢(shì)、云原生大規(guī)模的落地實(shí)踐,做最懂云原生開(kāi)發(fā)者的技術(shù)圈?!?
        上一個(gè):沃特世擴(kuò)展信息學(xué)軟件平臺(tái),助力定量質(zhì)譜分析
        下一個(gè):深圳福永在線VOCs檢測(cè)歡迎訂購(gòu)廠家

        惠州角邊封箱機(jī)的優(yōu)勢(shì)介紹
        MFH-5-1/4-S-B費(fèi)斯托電磁閥上?,F(xiàn)貨
        電動(dòng)V型法蘭式球閥主要特點(diǎn)
        惠普i5筆記本電腦怎么樣,惠普筆記本i5系列
        黃驊市總
        哈納總磷試劑HI93758C-50組成
        什么是交通意外傷害
        涂飾工程十大質(zhì)量通病原因分析及預(yù)防措施
        高純氮?dú)獍l(fā)生器的特點(diǎn)是什么?產(chǎn)氮不純是為什么?
        小米原裝耳機(jī)音質(zhì)怎么樣,小米原裝耳機(jī)怎么樣