日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

新手指引

Serverless 應用引擎 SAE(Serverless App Engine)是面向應用的Serverless PaaS平臺,能夠幫助PaaS層用戶免運維IaaS、按需使用、按量計費,做到低門檻微服務、PHP應用上云。本文介紹如何使用SAE,幫助您快速了解SAE以及各方面的實踐教程。

背景信息

如果您初次接觸SAE,建議您觀看入門視頻,了解SAE及其基本操作。更多信息,請參見什么是Serverless應用引擎。

功能索引

一級分類

二級分類

部署

啟動命令和參數數據庫白名單、CI/CD、升級和回滾、權限配置、其他

網絡

阿里云網絡基礎概念、SAE網絡訪問主要場景與方式、SAE網絡訪問對比項、微服務增強

多語言

PHP運行時支持靜態文件托管遠程調試

日志

文件日志、實時日志

存儲

NASOSS、上傳下載文件

監控告警

基礎監控、業務監控、告警設置

高可用

多vSwitch部署、優雅上下線、限流降級

彈性(降本增效)

手動擴縮定時彈性、指標彈性、混合彈性、定時啟停

實踐教程

實踐教程

SAE使用流程

SAE使用流程如下圖所示。dg_sae_workflow

  1. 在首次部署SAE應用前,需要完成規劃VPC、vSwitch、命名空間(區分測試、預發、生產等環境)的準備工作。

    具體操作,請參見準備工作

  2. SAE控制臺部署應用。

    具體操作,請參見應用托管概述。除通過控制臺部署應用外,SAE還支持通過Jenkins、IDE插件、Maven插件、Terraform、OpenAPI和云效等多種方式來部署應用。

    說明

    如果您是第一次部署應用到SAE,需要在SAE控制臺創建應用。

  3. 通過以下方式訪問SAE應用。

  4. SAE應用配置更多進階功能。

    例如,企業級權限控制、彈性(降本增效)、Java微服務增強、高可用、存儲等功能。

[回到頂部]

部署

SAE支持代碼包部署和鏡像部署,當前代碼包支持Java的WAR包和JAR包、PHP ZIP包和Python ZIP包。在創建SAE應用時,需要自定義或者自動配置VPC、vSwitch和安全組等,并且需要指定實例規格(創建后可以修改規格)。本文以下列配置為例,介紹SAE的參考部署。

啟動命令和參數

  • 鏡像部署

    啟動命令以及相關參數可以直接寫在Dockerfile內,同時也支持在SAE控制臺覆蓋啟動命令,如下圖所示。

    sc_set_start_command_image

  • 代碼包部署

    以JAR包部署為例,支持在SAE控制臺配置啟動相關參數,如下圖所示。

    sc_set_start_command_java_jar

[回到頂部]

數據庫白名單

不同于ECS模式,SAE在容器形態下,每次部署應用時IP地址都有可能變化,但應用綁定的vSwitch的網段不會變化,因此您可以在數據庫的白名單內配置vSwitch的網段。更多信息,請參見應用訪問阿里云數據庫

[回到頂部]

CI/CD

除控制臺部署和API部署外,SAE和很多CI/CD工具進行了集成,典型的有云效和Jenkins,可以實現代碼提交以后自動部署。更多信息,請參見應用托管概述

  • 插件部署

    如果您使用Java語言,SAE提供了豐富的插件部署,包括Maven插件、IntelliJ IDEA插件、Eclipse插件等。更多信息,請參見應用托管概述。

  • 端云互聯

    在微服務場景下,通常會拆分成很多應用。如果您的測試環境部署在阿里云,聯調的時候會是一大痛點。SAE聯合Cloud Tookit提供了遠程的端云互聯能力,可以在本機直接調用云端的Consumer、提供Provider等。更多信息,請參見使用Cloud Toolkit實現端云互聯(IntelliJ IDEA)。

  • Terraform

    SAE支持Terraform。更多信息,請參見terraform-provider-alicloudTerraform概述

[回到頂部]

升級和回滾

SAE支持豐富的回滾策略,包括單批發布、分批發布、灰度發布和回退歷史版本等。更多信息,請參見升級和回滾應用。

[回到頂部]

權限配置

SAE支持精細的權限控制,支持命名空間、應用和讀寫等粒度的權限控制,通過權限助手功能有效簡化您的配置過程。更多信息,請參見SAE權限助手。

[回到頂部]

其他

  • 環境變量

    應用在系統中運行需要配置特定的環境變量,其相關命令才可以被執行。環境變量以鍵值對的方式存儲,不同應用擁有不同的環境變量,并且互不影響。更多信息,請參見設置環境變量。

  • Hosts綁定

    SAE支持應用級別的實例,通過Hosts綁定對主機名進行解析,以便通過主機名訪問應用實例。更多信息,請參見設置Hosts綁定

[回到頂部]

網絡

將應用部署至SAE后,您可能會有不同的網絡訪問需求。更多信息,請參見SAE網絡相關概念和能力。

阿里云網絡基礎概念

dg_aliyun_cloud_network

  • 專有網絡(VPC):基于阿里云創建的自定義私有網絡,不同的專有網絡之間在邏輯上徹底隔離。

    說明

    私有網絡默認不可訪問公網。

  • 交換機(vSwitch):交換機是組成專有網絡的基礎網絡設備,對應實體物理機房。在VPC內創建云資源時,必須指定云資源所連接的交換機。

  • 彈性公網IP(EIP):只能和一個資源(ECS、SAE實例等)綁定,綁定的資源具備出、入公網的能力。

  • NAT網關(NAT Gateway):支持VPC內的資源訪問公網(SNAT)。區別于EIP的核心功能,公網NAT網關可用于VPC內的所有資源,而EIP只能用于VPC內的一個資源。

[回到頂部]

SAE網絡訪問主要場景與方式

將應用部署到SAE后,您可能會遇到以下網絡訪問需求。概念圖如下所示。dg_sae_network

SAE應用之間的內網互相訪問(非微服務)

Serverless模式下,每次部署都會產生新的內網IP,但不支持直接基于實例的IP來互相訪問應用。您可以通過以下方式實現。

  • SAE Service(CLB):基于阿里云負載均衡產品(私網CLB)實現的SAE服務來訪問。更多信息,請參見基于CLB配置應用服務訪問。

  • SAE ServiceName:基于SAE的K8s底座,實現的基于域名的應用訪問。每個SAE的應用會有一個SAE環境中可供訪問的域名。更多信息,請參見基于K8s ServiceName配置應用服務訪問。

  • SAE Ingress(ALB/CLB):基于阿里云負載均衡產品(私網ALB/CLB)實現的網關路由,可以根據不同的域名、路徑路由到不同的SAE應用。更多信息,請參見基于ALB/CLB配置網關路由(Ingress)訪問。

[回到頂部]

SAE應用需要被公網訪問(入口流量)

您可以通過以下方式實現。

[回到頂部]

SAE應用需要訪問公網(出口流量)

您可以通過以下方式實現。

[回到頂部]

SAE需要訪問VPC內的ECS、RDS、Redis等

  • SAE基于阿里云VPC網絡,因此無需額外配置,可以直接訪問同一VPC內的資源,如ECS、云數據庫RDS和云數據庫 Tair(兼容 Redis)等。反之,同一VPC內的阿里云資源也可以訪問SAE。

  • 需要確認安全組、產品白名單是否放開。如果遇到問題,請參考常見問題的步驟進行排查。

[回到頂部]

微服務應用訪問注冊中心以及實例互相訪問

更多信息,請參見SAE微服務相關概念和能力。

[回到頂部]

SAE網絡訪問對比項

SAE中服務(Service)和網關路由(Ingress)的區別

SAE基于阿里云SLB(CLB和ALB)實現的網關路由(Ingress),具備根據域名、路徑路由到不同應用的能力(如下圖),而ServiceName不具備該能力。因此,在滿足需求的前提下,建議您優先考慮使用網關路由。在需要使用4層TCP協議訪問或者無法通過域名訪問等場景下,您可以考慮使用ServiceName。dg_slb

[回到頂部]

基于CLB實現的服務和基于域名(K8s Service Domain)實現的服務的區別

K8s服務有兩種模式,一種是基于CLB,另一種是基于ClusterIP。SAE沒有直接提供ClusterIP,而是提供了一個可供訪問的域名。兩者的主要區別如下。

對比項

CLB

Domain(ClusterIP)

費用

CLB計費

免費

運維

CLB作為一個獨立的阿里云產品,支持配置相關的監控、告警以及收集訪問日志到SLS,提供細粒度的問題排查能力。

未提供獨立的監控、告警、訪問日志等能力,需要應用側本身配置告警和日志。

[回到頂部]

基于ALB實現的網關路由和CLB網關路由的區別

ALB(Application Load Balancer)是阿里云推出的專門面向HTTP、HTTPS和QUIC等應用層負載場景的負載均衡服務。針對網關路由場景,建議您優先考慮使用ALB。更多信息,請參見負載均衡SLB產品家族介紹。

[回到頂部]

基于NAT訪問公網和EIP訪問公網的區別

EIP訪問公網的示例圖如下,每個實例都會綁定一個EIP。如果EIP不足,則會創建失敗,導致實例無法對外提供服務。dg_eip

NAT和EIP兩種模式的主要差異如下。

對比項

NAT

EIP

生效范圍

NAT可以控制在VPC或者vSwitch級別,為VPC或者vSwitch內所有無公網IP的實例提供訪問公網的代理服務。一個VPC或者vSwitch只需要配置一個NAT,其所有實例將具備出公網的能力。

EIP為實例級別,例如10個實例就需要10個EIP。一個實例綁定EIP后,將同時具備出網和入網的能力。

是否固定公網IP

是。

否。新的實例成功綁定EIP后,SAE才會銷毀原先的實例并解綁原來的EIP。因此,需保證EIP數量至少為實例數量加一。EIP是變化的,是一個IP池。

典型場景

應用會自動彈性擴縮,新的實例默認需要出公網的能力,且需要固定IP(95%的用戶都適合該場景)。

可接受EIP可變,需要直連實例的場景(例如在線會議),另外還需要自行精細化地控制每個實例的生命周期。

費用

計費詳情,請參見NAT網關計費。

計費詳情,請參見EIP計費。實例數不超過20個時,EIP成本更優。

[回到頂部]

微服務增強

SAE作為微服務架構Serverless化的最佳實踐產品,提供了諸多微服務能力的增強。更多信息,請參見SAE微服務相關概念和能力。

注冊中心

使用說明

為了讓微服務的應用可以快速部署到SAE,SAE提供了“Serverless”版的Nacos作為注冊中心,適用于使用Nacos1.X和2.X客戶端的微服務應用。您可以參見在應用中配置SAE內置Nacos,將您的微服務應用部署到SAE。SAE注冊中心的使用說明如下。

  • 選擇SAE內置Nacos后,SAE通過自動注入相關環境變量以及借助于Java Agent修改字節碼的技術,支持自動修改程序的注冊中心地址。因此,您無需對程序做任何修改即可將其直接部署到SAE。

  • 不適用于使用非Nacos注冊中心的程序,相關邏輯完全由您的程序控制。

  • 該注冊中心適用于快速體驗或者小規模生產環境,如果您的微服務應用實例總數超過30個,推薦您使用自建注冊中心或者MSE注冊中心。

[回到頂部]

應用配置

應用配置如何生效,請參見使用SAE內置Nacos。

[回到頂部]

配置中心

使用說明

與注冊中心一樣,也提供了“Serverless”版的Nacos作為配置中心,適用于使用Nacos1.X和2.X客戶端的微服務應用。您可以參見在應用中配置SAE內置Nacos,使用SAE的配置中心。SAE配置中心的使用說明如下。

  • 選擇SAE內置Nacos后,SAE通過自動注入相關環境變量以及借助于Java Agent修改字節碼的技術,支持自動修改程序的配置中心地址。因此,您無需對程序做任何修改即可將其直接部署到SAE。

  • 不適用于使用非Nacos配置中心的程序,相關邏輯完全由您的程序控制。

  • 該配置中心的控制臺由阿里云應用配置管理(Application Configuration Management,簡稱ACM)提供,雖然作為獨立產品,它已經進入下線狀態,但是在SAE中支持繼續使用。建議您直接使用MSE提供的Nacos 2.0配置服務。更多信息,請參見Nacos版本特性。

[回到頂部]

應用配置

應用配置如何生效,請參見使用SAE內置Nacos??刂婆_如何管理配置,請參見分布式配置管理

[回到頂部]

微服務開發

IDE自動部署

相比于每次重新打包部署,IDE一鍵部署可以大大減少您的部署時間,并提升研發效率。

具體操作,請參見使用Alibaba Cloud Toolkit自動化部署微服務至SAE

[回到頂部]

端云互聯

采用微服務架構后,您的應用數會增多。在極端情況下,本地開發聯調需要啟動所有相關的微服務應用。針對該痛點,您可以借助阿里云Cloud Toolkit插件提供的端云互聯能力。例如,讓您的本地Consumer直接連接到SAE中部署的Provider,從而無需在本地啟動Provider,大大減少開發調試成本。

具體操作,請參見使用Cloud Toolkit實現端云互聯(IntelliJ IDEA)

[回到頂部]

服務治理

服務列表

對于使用內置Nacos的應用,SAE提供基礎的服務列表查詢能力。如果您使用自建注冊中心或者MSE注冊中心,可以登錄對應的控制臺查詢,無需在SAE控制臺查看。

具體操作,請參見查詢服務列表

[回到頂部]

無損下線

因為Consumer客戶端存在緩存,無法及時收到微服務Provider的下線通知,所以通常需要從注冊中心摘除Provider實例,等待Consumer緩存刷新。針對上述情況,SAE借助MSE的無損下線將該功能做了產品化的集成。

關于該功能不適用的場景以及相比較于開源Spring Cloud和開源Dubbo優勢的更多信息,請參見配置無損下線。

SAE中配置無損下線的具體操作,請參見設置微服務無損下線

[回到頂部]

無損上線

微服務的Provider服務只要注冊到注冊中心即可被Consumer調用,但此時,Provider可能還需要更進一步的初始化,例如數據庫連接池的初始化等。因此,對于流量比較大的微服務應用,推薦您開啟無損上線功能。

具體操作,請參見設置微服務無損上線。

[回到頂部]

微服務灰度

SAE不僅支持應用生命周期托管,還提供了微服務應用發布態的灰度能力。

具體操作,請參見管理灰度規則(Java)灰度發布微服務

[回到頂部]

限流降級

無論是微服務應用還是單體應用,在面對一些突發流量,例如秒殺場景時,應用可能會突然崩潰。如果是微服務應用,可能還會造成雪崩效應,因此有必要去做一些保護措施。SAE集成阿里云應用高可用服務(Application High Availability Service,簡稱AHAS),能夠方便地配置和管理限流降級規則。

具體操作,請參見限流降級

[回到頂部]

應用監控

微服務架構下,如果沒有配套的監控系統,不利于發現問題和診斷問題。SAE集成 應用實時監控服務 ARMS(Application Real-Time Monitoring Service),提供了應用大盤、JVM監控、慢調用監控、調用鏈分析和告警等能力,盡可能降低企業落地微服務架構的門檻。

更多信息,請參見應用監控

[回到頂部]

多語言

PHP運行時支持

SAE支持以下部署方式。

  • 鏡像:任意PHP架構應用。

  • PHP ZIP包:任意PHP-FPM結合Nginx架構的在線應用。

SAE默認提供PHP運行時環境。更多信息,請參見PHP運行環境說明

[回到頂部]

靜態文件托管

借助NAS和OSS,SAE支持獨立托管靜態文件,對運行過程中的代碼、模板、上傳的文件進行持久化存儲,并實現跨實例共享文件。

[回到頂部]

遠程調試

借助SAE的不同功能,SAE支持多種調試能力。

  • PHP遠程調試

    SAE內置Xdebug插件,可開啟遠程調試。

  • 文件下載

    SAE支持通過Webshell登錄實例,并借助SAE或OSS等功能下載文件。更多信息,請參見使用Webshell實現文件上傳下載

  • 文件上傳

    SAE借助NAS和OSS,方便開發調試代碼。

[回到頂部]

日志

SAE集成了SLS和Kafka日志采集。SAE實時日志功能支持查看500行日志信息,如果您有更高的查閱需求,建議使用文件日志收集功能。SAE會將業務文件日志(容器內日志路徑)、容器標準輸出日志(stdout)收集并輸入SLS或Kafka中,實現無限制行數查看日志、自行聚合分析日志,方便業務日志對接。

文件日志

SAE集成了SLS日志采集,您只需在SAE控制臺開啟。與ECS時代手動維護采集的機器列表不同,在SAE配置好采集目錄或者采集文件后,后續每當部署、擴容時,SAE都會自動和SLS對接日志采集,支持在SLS控制臺根據關鍵字檢索日志。更多信息,請參見設置日志收集至SLS

日志源支持通配符,例如/tmp/log/*.log表示采集/tmp/log目錄以及子目錄下所有以log結尾的文件。

sc_use_sls_v2

在不便使用SLS采集、RAM用戶(子賬號)無法查看SLS日志等情況下,您可以選擇將日志導入Kafka。在此基礎上,您可以結合自身的業務場景,將Kafka的數據投遞到例如Elasticsearch等其他持久化庫中,便于集中管理和分析日志。更多信息,請參見設置日志收集至KafkaSAE日志導入Kafka最佳實踐。

同時,您還可以通過環境變量來設置Logtail啟動參數。更多信息,請參見設置環境變量提升Logtail采集性能。

[回到頂部]

實時日志

SAE會自動采集標準輸出的日志,保留最新的500條,并支持在SAE控制臺查看。更多信息,請參見日志管理。

sc_real_time_logs

如果您希望將標準輸出內容也采集到SLS,可以先將標準輸出到文件,再配置文件采集。參數如下圖所示。

sc_set_args[回到頂部]

存儲

SAE自帶20 GB的系統盤存儲,如果您有讀寫外部存儲需求,建議使用NAS和OSS。診斷SAE應用包括常規檢查和上傳日志兩種方式,其中上傳日志不僅可以使用OSS,也可以使用SAE內置的一鍵上傳與下載功能。

說明

日志場景下,建議使用SLS,不建議使用NAS和OSS。更多信息,請參見設置日志收集至SLS。

NAS

SAE支持NAS存儲功能,解決了應用實例數據持久化和實例間數據分發的問題。NAS存儲只有掛載到ECS或者SAE才能訪問。更多信息,請參見設置NAS存儲

[回到頂部]

OSS

OSS提供了便捷的工具以及控制臺,支持可視化地管理Bucket。OSS適合讀多寫少的場景,例如掛載配置文件或者前端靜態文件等。在SAE控制臺部署應用時配置了OSS存儲后,您可以通過OSS控制臺訪問數據。更多信息,請參見設置OSS存儲。

說明

寫日志的場景下,無法使用ossfs工具。更多信息,請參見ossfs。

[回到頂部]

上傳下載文件

如果您希望將SAE內的文件下載到本地,您可以使用Webshell自帶的文件上傳下載功能。更多信息,請參見使用Webshell實現文件上傳下載。

除使用NAS或者OSS存儲外,您還可以使用ossutil工具。關于如何使用阿里云OSS服務進行日志上傳下載,請參見通過常規檢查診斷應用

[回到頂部]

監控告警

SAE內置了基礎監控和ARMS業務監控(Java和PHP)。告警管理提供了可靠的告警收斂、通知、自動升級以及其他功能,幫助您快速檢測和修復業務告警。

基礎監控

基礎監控包含CPU、Load、MEM、磁盤、網絡和TCP連接等。更多信息,請參見基礎監控。當前基礎監控內置的是阿里云云監控產品,所以您也可以登錄云監控控制臺配置自定義的監控大盤。

[回到頂部]

業務監控

業務監控默認提供了ARMS基礎版,可以查看應用大盤、JVM監控、接口QPS RT、線程池和調用鏈分析等。更多信息,請參見應用詳情

pg_monitor[回到頂部]

告警設置

SAE支持對以上各個監控項設置告警。更多信息,請參見應用監控報警。

[回到頂部]

高可用

將應用部署在SAE后,針對流量的優雅上線與下線,您可以使用健康檢查功能查看應用實例與業務運行是否正常,以便運行異常時定位問題。同時,SAE支持部署多vSwitch以應對機房級別的故障,支持使用AHAS實現Java應用的限流降級,全面保障應用的可用性。

多vSwitch部署

為了應對機房級的故障,建議您對生產級別的SAE應用配置多vSwitch。您可以選擇在創建應用時配置多vSwitch,或者在創建應用以后增加vSwitch。創建vSwitch時,建議您設計相對充足的IP地址數(建議100以上),如果IP地址不足則會出現無法創建或者彈性伸縮失敗的情況。更多信息,請參見切換vSwitch

  • 創建時選擇多vSwitch。sc_choose_vswitch_when_creating_application

  • 創建后增加vSwitch。bt_choose_vswitch_when_application_has_been_created.png

    說明

    增加vSwitch時,要注意同步配置數據庫白名單。更多信息,請參見應用訪問阿里云數據庫。

[回到頂部]

優雅上下線

SAE部署應用時,一般會經過先擴容再縮容的過程,但是對于流量的優雅上線與下線有以下兩大業務痛點。

  • 新擴容的實例是否已經就緒能夠承接流量。

  • 如何優雅銷毀老實例。

SAE基于Kubernetes,提供了兩種健康檢查方式,包括應用實例存活檢查(Liveness配置)和應用業務就緒檢查(Readiness配置)。針對上述兩大痛點,SAE支持配置健康檢查Readiness。Readiness探針會周期性地檢測實例是否就緒,新實例就緒后,SAE才會接入流量。如果檢測失敗,SAE不會引入流量。開始銷毀老實例前,會先從流量側摘除,并且銷毀實例前可以配置下線腳本以及等待時間。更多信息,請參見設置健康檢查

健康檢查Liveness,也會周期性地檢測實例是否已經啟動。如果檢測失敗,SAE會自動重啟容器。該特性便于進行異常場景的自動化運維,但可能會造成現場丟失,無法排查失敗原因。您可以根據您的實際場景判斷是否需要配置Liveness。

除配置Readiness或者Liveness外,微服務場景還需要配置微服務的優雅下線,以解決注冊中心存在緩存的問題。更多信息,請參見設置微服務無損下線同時,在生產環境中,可能會出現因使用自動彈性伸縮、回滾升級等能力,而導致短時間內服務不可用、業務監控大量報錯等情況。針對上述痛點,SAE支持配置微服務的優雅上線。更多信息,請參見設置微服務無損上線。

[回到頂部]

限流降級

對于大流量場景,SAE集成了AHAS限流降級,保障應用的可用性。更多信息,請參見設置限流降級。

[回到頂部]

彈性(降本增效)

SAE支持手動擴縮、定時彈性、指標彈性、混合彈性和定時啟停等彈性策略。彈性作為云原生架構和應用的典型特點,從機器成本角度能夠幫您降低成本,從運維角度能夠幫您提升運維效率。

手動擴縮

手動擴縮適用于人工運維的場景。相較于ECS相對較復雜較慢的擴縮過程,SAE擴縮基于容器鏡像,更加快速。更多信息,請參見手動擴縮。

[回到頂部]

定時彈性

定時彈性適用于流量可預期的場景。例如,餐飲和教育行業每天存在明確的早晚業務高峰,則可以配置在不同的時間段運行不同的實例數,使服務器資源盡量貼合實際業務流量。更多信息,請參見配置彈性伸縮策略

[回到頂部]

指標彈性

指標彈性適用于流量相對不可預期的場景,當前支持CPU、MEM、TCP連接數、QPS和RT等指標。更多信息,請參見配置彈性伸縮策略

[回到頂部]

混合彈性

混合彈性適用于同時有突發流量和定時彈性訴求的場景,例如互聯網、教育和餐飲等行業,對已知的時段進行精細粒度的實例數調整。

例如,在工作日彈性的實例最大值配置為max,最小值配置為min,但是實際上在周末又不需要保持min的實例數,則可以針對周末再配置一個實例數,減小min。更多信息,請參見配置彈性伸縮策略。

[回到頂部]

定時啟停

定時啟停功能可以實現按命名空間定時批量啟停應用,例如定時啟停開發環境或測試環境的全部應用。假設對于開發測試環境,每天只需在08:00~20:00時使用,其余時間處于閑置狀態,則可以在SAE配置定時啟停,以降低成本。更多信息,請參見管理定時啟停規則。

[回到頂部]

實踐教程

針對各種業務需求,SAE提供了相關的最佳實踐。除本文涉及到的彈性、網絡、存儲和應用訪問阿里云數據庫等外,還包括鏡像、應用加速、JVM參數配置等。更多常見場景,請參見實踐教程

[回到頂部]