AWS宣布更新工作流程服務(wù)Step Functions提供AWS SDK集成,使得原本Step Functions只支持的17個(gè)AWS服務(wù),增加到超過200個(gè),而且AWS API Actions也從46個(gè)提升到9,000多個(gè)。
AWS提到,當(dāng)開發(fā)人員構(gòu)建分布式架構(gòu)時(shí),可能使用基于工作流程的調(diào)度模式,該模式有助于服務(wù)內(nèi)部工作流程自動(dòng)化,來方便地執(zhí)行分布式交易。而所謂的分布式交易,可以是處理訂單的所有任務(wù),或是持續(xù)關(guān)注交易狀態(tài)。
Step Functions是一種低程序代碼的工作流程服務(wù),供用戶使用可視化的接口,來自動(dòng)化和調(diào)度服務(wù),協(xié)助開發(fā)者使用基于流程的調(diào)度模式,來構(gòu)建分布式架構(gòu)。開發(fā)者能夠?qū)tep Functions和托管服務(wù)一起使用,像是人工智能服務(wù)、S3或是DynamoDB等。
不過,過去在使用Step Functions,構(gòu)建和AWS服務(wù)集成的工作流程時(shí),仍然有一些挑戰(zhàn),由于Step Functions所提供的服務(wù)集成只有46種,因此當(dāng)開發(fā)者需要用到?jīng)]有支持的服務(wù),便需要在AWS Lambda函數(shù)中,自己編寫集成程序代碼,而這種方式帶來了應(yīng)用復(fù)雜性,以及額外的開發(fā)成本。
而現(xiàn)在新發(fā)布的Step Functions AWS SDK Service Integrations,供開發(fā)者直接將狀態(tài)機(jī)集成到AWS SDK所支持的AWS服務(wù)中,因此開發(fā)者可以創(chuàng)建使用ASL(AWS SDK Service Integrations with Amazon States Language)、AWS CDK的狀態(tài)機(jī),或是使用AWS Step Function Workflow Studio,主動(dòng)地創(chuàng)建狀態(tài)機(jī)。
只要指定服務(wù)名稱和API調(diào)用,便可以在Step Functions中使用AWS SDK集成功能,官方提到,Step Functions無法對(duì)AWS SDK集成自動(dòng)生成IAM政策,創(chuàng)建狀態(tài)機(jī)后,開發(fā)者需要到IAM控制臺(tái)配置角色政策。
Step Functions的AWS SDK服務(wù)集成功能,已經(jīng)在美東、美西、加拿大、歐洲等地區(qū)推出,而亞太AWS云計(jì)算地區(qū),則目前先在東京提供,接來AWS將會(huì)擴(kuò)展該功能,到所有提供Step Functions服務(wù)的地區(qū)。