日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

函数计算搭建 Serverless Web 应用(三)- 三分钟搭建 Web 应用

發布時間:2024/8/23 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 函数计算搭建 Serverless Web 应用(三)- 三分钟搭建 Web 应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡介

阿里云?函數計算(Function Compute)?是事件驅動的全托管計算服務,是阿里云的?Serverless?計算平臺?;诤瘮涤嬎銟嫿☉?#xff0c;您無需管理服務器等基礎設施,而是專注于應用邏輯的開發,大幅提高開發效率。

函數計算搭建 Serverless Web 應用(一)- HTTP 觸發器?中闡述了 Web 應用(Serverless web backend) 是函數計算很重要的一個使用場景。相比于傳統的在服務器上搭建 web 應用,函數計算無需您管理服務器等基礎設施,只需編寫代碼并上傳,函數計算會為您準備好計算資源,以?彈性、?可靠?的方式運行您的代碼,實現毫秒級別彈性伸縮,輕松應對峰值壓力。

函數計算搭建 Serverless Web 應用(二)- 自定義域名?中闡述了綁定自定義域名,通過自定義域名訪問函數,配合 HTTP 觸發器使用,為用戶使用函數計算搭建 Web 應用提供便利。

本文對使用自定義域名 + HTTP 觸發器搭建 Web 應用的步驟進行詳細介紹,手把手帶您三分鐘搭建穩定可靠的 Web 應用。

搭建步驟

場景:本示例基于 HTTP 觸發器搭建 Web 應用,有兩個函數 f1 和 f2,作為示例,函數的功能只是打印出 request 請求,當然,您可以在函數中編寫任意業務邏輯。

預期效果:通過自定義域名進行訪問可以觸發函數執行,得到預期結果。

前提:您有獨立的域名,且已經接入阿里云備案(如果函數在非中國大陸節點的 region,無需備案)。

步驟一:創建配置 HTTP 觸發器的函數

  • 登錄?函數計算管理控制臺。
  • 新建服務,本示例的服務名稱為 web-server,開啟【高級配置】,配置日志項目和日志倉庫,角色創建方式為新建角色,系統授權模板選擇?AliyunLogFullAccess,點擊 【授權】,點擊【確定】。
  • 在左側導航欄選擇服務,進入到新建的服務中。
  • 單擊 【創建函數】,在創建函數頁面:

    • 單擊 【選擇全部的語言】,在下拉菜單中選擇 node8 或 python2.7(本示例代碼會對兩種語言進行介紹)。
    • 選擇 【空白函數】。
    • 按如下圖示配置 HTTP 觸發器,單擊 【下一步】。
  • 認證方式選擇 anonymous,不需要身份驗證,支持匿名訪問。
  • 請求方式為此函數可以處理的 HTTP 請求方式。
    • 創建函數并填寫所在服務、函數名稱、描述信息和運行環境信息。
    • 單擊【下一步】。
    • 核對信息無誤后,單擊【創建】。

    然后編寫函數代碼

    # -*- coding: utf-8 -*- import json HELLO_WORLD = b"Hello world!\n"def handler(environ, start_response):request_uri = environ['fc.request_uri']response_body = {'uri':environ['fc.request_uri'],'method':environ['REQUEST_METHOD']}# do something herestatus = '200 OK'response_headers = [('Content-type', 'text/json')]start_response(status, response_headers)# Python2return [json.dumps(response_body)]# Python3 tips: When using Python3, the str and bytes types cannot be mixed.# Use str.encode() to go from str to bytes# return [json.dumps(response_body).encode()]

    此處以 Python 為例,其他語言的代碼請參考文章?創建函數和 HTTP 觸發器。

    步驟二:域名解析

    為了保證您的自定義域名的請求可以到達函數計算,需要您在域名解析服務器處設置域名的 CNAME 為您函數計算的?endpoint。

    endpoint 的格式為?<accountID>.<region>.fc.aliyuncs.com,您可以在函數計算控制臺右上角獲取當前 region 的 endpoint。

    使用阿里云云解析 DNS 對域名進行解析請參考?域名解析。

    步驟三:綁定自定義域名

    您需要在函數計算控制臺綁定自定義域名:

    • 登錄?函數計算控制臺

    • 在控制臺首頁右側點擊進入?自定義域名管理,即可綁定自定義域名并設置路由。

    ?

    ?

    步驟四:測試

    設置成功后,訪問自定義域名進行測試,示例演示通過命令行 curl url 進行測試,您也可以通過瀏覽器測試。

    ~ curl api.app.com {"path": "/","queries": {},"headers": {"accept": "*/*","user-agent": "curl/7.58.0"},"method": "GET","requestURI": "/","clientIP": "42.120.75.144","serviceName": "serviceA","functionName": "functionA","body": "" }%~ curl api.app.com/b {"path": "/b","queries": {},"headers": {"accept": "*/*","user-agent": "curl/7.58.0"},"method": "GET","requestURI": "/b","clientIP": "42.120.75.144","serviceName": "serviceA","functionName": "functionB","body": "" }%~ curl api.app.com/a {"path": "/a","queries": {},"headers": {"accept": "*/*","user-agent": "curl/7.58.0"},"method": "GET","requestURI": "/a","clientIP": "42.120.75.144","serviceName": "serviceB","functionName": "functionC","body": "" }%~ curl api.app.com/a/b {"path": "/a/b","queries": {},"headers": {"accept": "*/*","user-agent": "curl/7.58.0"},"method": "GET","requestURI": "/a/b","clientIP": "42.120.75.144","serviceName": "serviceB","functionName": "functionD","body": "" }%

    總結

    綁定自定義域名可以允許用戶通過自定義域名訪問 FC 的函數,配合 HTTP 觸發器使用,可以快速搭建性能穩定彈性可擴容的 Web 應用,可以說是十分方便了。

    您在使用過程中遇到任何問題都可以隨時?聯系我們,函數計算團隊所有工程師都會在群里實時進行答疑,沒錯,所有工程師,任何問題,隨時聯系。

    期待您的使用~~


    原文鏈接
    本文為云棲社區原創內容,未經允許不得轉載。

    總結

    以上是生活随笔為你收集整理的函数计算搭建 Serverless Web 应用(三)- 三分钟搭建 Web 应用的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。