本文來自微信公眾號“開源云中文社區(qū)”。
邊緣現(xiàn)在很流行。2023年,每個網(wǎng)站和應(yīng)用程序都很有可能和邊緣沾邊。
Azion是一家邊緣提供商,在全球擁有100個邊緣站點。Azion的首席開發(fā)人員體驗官Alessandro Cauduro解釋說,邊緣架構(gòu)有一些組件,例如,它可以包括物聯(lián)網(wǎng)設(shè)備,但當(dāng)涉及到前端開發(fā)時,邊緣是指將更多的應(yīng)用程序放在終端用戶附近。Azion在北美和南美擁有強大的影響力。
Cauduro說:“如果云數(shù)據(jù)中心位于紐約,那么它的邊緣基本上就在終端用戶附近,而不是將所有東西集中在一個地方,比如在云數(shù)據(jù)中心。它使分布式應(yīng)用程序更快、更安全,因為在到達應(yīng)用程序之前,你必須從邊緣節(jié)點開始。因此,這是構(gòu)建即時響應(yīng)應(yīng)用程序的基本方式。”
Azion與Akamai和Cloudflare等CDN競爭,但Azion主要專注于web應(yīng)用程序部署。
Cauduro說:“如今,一個開發(fā)人員可以使用Next.js這樣的全棧開發(fā)環(huán)境,創(chuàng)建一個完整的應(yīng)用程序。因此,對于一個開發(fā)人員來說,使用最現(xiàn)代的方法構(gòu)建一個可擴展的應(yīng)用程序,現(xiàn)在很容易創(chuàng)建一個世界級的應(yīng)用程序。”
加速應(yīng)用程序
事實證明,邊緣和無服務(wù)器搭配很好。他說,邊緣可以用于加速當(dāng)前在特定服務(wù)器上運行的現(xiàn)有云應(yīng)用程序。在這種情況下,邊緣充當(dāng)緩存。
Cauduro說:“你可以在上云之前到達邊緣,可以做一些計算并決定要做什么——如果你真的需要上云,或者你可以根據(jù)用戶的行為立即做出回應(yīng)。這就是無服務(wù)器,但它也可以與現(xiàn)有的云基礎(chǔ)設(shè)施一起工作。”
這是一個很大的用例,因為開發(fā)人員可以在邊緣設(shè)置web應(yīng)用程序防火墻,確保在呼叫通過服務(wù)器之前,基礎(chǔ)設(shè)施得到保護。
將開發(fā)移到邊緣
不過,隨著開發(fā)人員考慮是否可以繞過云基礎(chǔ)設(shè)施,只在邊緣構(gòu)建,這一轉(zhuǎn)變正在發(fā)生。他補充道,邊緣與Jamstack架構(gòu)配合得很好。API不必駐留在云服務(wù)器上——它也可以在邊緣交付,這與前端運行JavaScript一起,使應(yīng)用程序快速反應(yīng)。
他說:“所以這基本上是從集中到分散,這就是邊緣目前正在發(fā)生的變化。速度快得多,我們不需要管服務(wù)器,因為這很痛苦。”他補充道,這也可能更有經(jīng)濟效益。
“邊緣可以決定我們是否已經(jīng)找到了所需的答案,你只需將其返回給用戶;我們可以一直到服務(wù)器,這樣你就不需要那么多基礎(chǔ)設(shè)施了。你只需要在使用它時付費,不需要讓服務(wù)器24小時運行,因為邊緣已經(jīng)準備好了。”
他補充道,像Azion這樣的提供商所做的是將部署抽象到邊緣,這樣開發(fā)人員很容易做到這一點。它允許開發(fā)人員簡單地在線部署應(yīng)用程序,而不必具體了解幕后發(fā)生的事情。
然而,在幕后發(fā)生的是Next.js等應(yīng)用程序?qū)㈨撁娌鸱譃槎鄠€功能。這些功能被創(chuàng)建并部署到邊緣以運行。Cauduro說,這可以通過JavaScript或WebAssembly實現(xiàn),就像CDN處理靜態(tài)內(nèi)容一樣。Azion使用標(biāo)準的web API將代碼自動傳播到其網(wǎng)絡(luò)。
“這是創(chuàng)建一個行星級應(yīng)用程序的非常簡單的方法。一個開發(fā)人員可以創(chuàng)建非??煽康臇|西,因為我們有100個數(shù)字站點。如果其中一個位置發(fā)生故障,我們會自動重新路由到另一個位置。這是安全的,因為我們在使用代碼之前就已經(jīng)安裝了防火墻。而且速度非???,因為它非常、非常接近用戶。這就是為什么現(xiàn)在每個人都在談?wù)撨吘墶?rdquo;