AWS Lambda目前已經(jīng)支持環(huán)境變量

責(zé)任編輯:editor004

作者: Sergio De Simone

2016-11-29 11:42:25

摘自:INFOQ

AWS最近為AWS Lambda增加了一項功能,允許定義變量來實現(xiàn)代碼運行環(huán)境的個性化。借助環(huán)境變量,能夠讓我們的函數(shù)在不同的環(huán)境中所執(zhí)行的行為有所差異,這個過程中不需要改變它的實現(xiàn)。

AWS最近為AWS Lambda增加了一項功能,允許定義變量來實現(xiàn)代碼運行環(huán)境的個性化。按照AWS首席布道師Jeff Barr的說法,這樣能夠讓我們編寫出整潔和可重用的代碼,無需進行重新部署。

借助環(huán)境變量,能夠讓我們的函數(shù)在不同的環(huán)境中所執(zhí)行的行為有所差異,這個過程中不需要改變它的實現(xiàn)。典型的使用場景就是為特定的生命周期階段采用不同的函數(shù)行為,比如開發(fā)階段、測試階段或生產(chǎn)階段,每個階段可能會使用各自的數(shù)據(jù)庫或使用不同的連接憑證。

AWS Lambda環(huán)境變量可以使用AWS Console、CLI或SDK來進行定義。如下展現(xiàn)了如何使用AWS CLI定義AWS Lambda,在這個過程中用到了一個LD_LIBRARY_PATH環(huán)境變量:

aws lambda create-function --region us-east-1 --function-name myTestFunction --zip-file fileb://path/package.zip --role role-arn --environment Variables={LD_LIBRARY_PATH=/usr/bin/test/lib64} --handler index.handler --runtime nodejs4.3 --profile default

環(huán)境變量在創(chuàng)建之后,就可以使用編程語言所支持的方式來訪問環(huán)境信息,比如在Node.js中使用process.env。當(dāng)使用Python的時候,我們需要導(dǎo)入os庫,如下面的樣例所示:

...import os...print("environment variable: " + os.environ['variable'])

環(huán)境變量就是一些鍵/值對,如果需要的話,可以進行加密和解密。它們會關(guān)聯(lián)到所屬的Lambda的一個給定版本上,在Lambda發(fā)布之前,它們可以自由地進行修改。但是一旦lambda版本發(fā)布,那么它的環(huán)境變量就變成不可變的了。將Lambda回滾至任意版本的時候,它的環(huán)境變量也會恢復(fù)。在數(shù)量上,Lambda函數(shù)可以關(guān)聯(lián)多少環(huán)境變量并沒有限制,只要它們的總大小不超過4KB就可以。

查看英文原文:AWS Lambda Now Supports Environment Variables

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號