午夜无码人妻aⅴ大片色欲张津瑜,国产69久久久欧美黑人A片,色妺妺视频网,久久久久国产综合AV天堂

函數(shù)計(jì)算如何訪問(wèn)Mongo數(shù)據(jù)庫(kù)

這篇文章給大家介紹函數(shù)計(jì)算如何訪問(wèn) Mongo 數(shù)據(jù)庫(kù),內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

蓋州網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,蓋州網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為蓋州成百上千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的蓋州做網(wǎng)站的公司定做!

函數(shù)計(jì)算(Function Compute): 函數(shù)計(jì)算 是事件驅(qū)動(dòng)的全托管計(jì)算服務(wù)。使用函數(shù)計(jì)算,您無(wú)需采購(gòu)與管理服務(wù)器等基礎(chǔ)設(shè)施,只需編寫(xiě)并上傳代碼。函數(shù)計(jì)算為您準(zhǔn)備好計(jì)算資源,彈性地可靠地運(yùn)行任務(wù),并提供日志查詢、性能監(jiān)控和報(bào)警等功能。借助函數(shù)計(jì)算,您可以快速構(gòu)建任何類型的應(yīng)用和服務(wù),并且只需為任務(wù)實(shí)際消耗的資源付費(fèi)。

訪問(wèn) MongoDB 數(shù)據(jù)庫(kù)是指在函數(shù)計(jì)算中通過(guò)編寫(xiě)代碼調(diào)用數(shù)據(jù)庫(kù)驅(qū)動(dòng)庫(kù)通過(guò) TCP 協(xié)議實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)進(jìn)行的插入、查詢等操作。通常函數(shù)計(jì)算中運(yùn)行的不同函數(shù)實(shí)例之間是不共享狀態(tài)的,對(duì)于結(jié)構(gòu)化的數(shù)據(jù)可以通過(guò)數(shù)據(jù)庫(kù)的形式進(jìn)行持久化以實(shí)現(xiàn)狀態(tài)共享。由于用戶函數(shù)運(yùn)行在函數(shù)計(jì)算的 VPC 中,而用戶的數(shù)據(jù)庫(kù)運(yùn)行在用戶所屬的 VPC 中,所以在函數(shù)計(jì)算平臺(tái)訪問(wèn)數(shù)據(jù)庫(kù)會(huì)涉及到跨 VPC 訪問(wèn)的場(chǎng)景,下面我們先來(lái)介紹一下其工作機(jī)制。

工作機(jī)制

訪問(wèn) MongoDB 的原理、工作機(jī)制與訪問(wèn) MySQL 數(shù)據(jù)庫(kù)完全相同,本文不再重復(fù)闡述,更詳細(xì)的內(nèi)容請(qǐng)參考 訪問(wèn) Mysql 數(shù)據(jù)庫(kù) 中的工作機(jī)制章節(jié)。

配置與函數(shù)編寫(xiě)

公共配置

創(chuàng)建專有網(wǎng)絡(luò)VPC
  1. 登錄 VPC控制臺(tái)。

  2. 參閱 VPC 搭建專有網(wǎng)絡(luò) 創(chuàng)建VPC和交換機(jī)。

創(chuàng)建安全組

在 安全組控制臺(tái) 新建安全組,點(diǎn)擊 創(chuàng)建安全組,設(shè)置安全組名稱,網(wǎng)絡(luò)類型選擇 專有網(wǎng)絡(luò),并選擇剛才創(chuàng)建的專有網(wǎng)絡(luò)。

創(chuàng)建與配置 MongoDB 實(shí)例
  1. 創(chuàng)建適合業(yè)務(wù)需求的云數(shù)據(jù)庫(kù) MongoDB 版實(shí)例可以參考 云數(shù)據(jù)庫(kù) MongoDB 版。

    注意:創(chuàng)建云數(shù)據(jù)庫(kù) MongoDB 版實(shí)例需要選擇和函數(shù)計(jì)算配置相同的 VPC 實(shí)例,可以配置和函數(shù)計(jì)算不同的可用區(qū)的交換機(jī),因?yàn)橄嗤?VPC 實(shí)例下不同可用區(qū)交換機(jī)內(nèi)網(wǎng)是互通的。

  2. 創(chuàng)建成功后,在實(shí)例信息頁(yè)面左側(cè)的導(dǎo)航欄中單擊白名單設(shè)置

  3. 單擊 default區(qū)域框右側(cè)的修改。
    函數(shù)計(jì)算如何訪問(wèn) Mongo 數(shù)據(jù)庫(kù)

  4. 在彈出的對(duì)話框中,將函數(shù)計(jì)算所在的 VPC 網(wǎng)絡(luò)的網(wǎng)段地址配置在白名單輸入框中。

    1. 登錄 VPC 控制臺(tái),在專有網(wǎng)絡(luò)列表中找到應(yīng)用所在的 VPC,單擊該 VPC 的名稱進(jìn)入專有網(wǎng)絡(luò)詳情頁(yè)面。

    2. 復(fù)制應(yīng)用所在的 VPC 的 IPv4 網(wǎng)段。
      函數(shù)計(jì)算如何訪問(wèn) Mongo 數(shù)據(jù)庫(kù)

    3. 組內(nèi)白名單設(shè)置框中粘貼該 VPC 的 IPv4 網(wǎng)段地址,然后單擊確定。
      函數(shù)計(jì)算如何訪問(wèn) Mongo 數(shù)據(jù)庫(kù)

  5. 最后訪問(wèn) MongoDB 數(shù)據(jù)庫(kù) host 為實(shí)例的內(nèi)網(wǎng)地址,可以登錄阿里云控制臺(tái)查看:

    多種語(yǔ)言的客戶端連接阿里云 MongoDB 可以參考 MongoDB 客戶端連接。

    函數(shù)計(jì)算如何訪問(wèn) Mongo 數(shù)據(jù)庫(kù)

函數(shù)計(jì)算配置 VPC

注意:函數(shù)計(jì)算服務(wù)所在區(qū)域與公共配置中創(chuàng)建的資源所在區(qū)域一致。

  1. 在 函數(shù)計(jì)算控制臺(tái) 創(chuàng)建服務(wù)。

    • 創(chuàng)建服務(wù)步驟請(qǐng)參考文章 服務(wù)的增刪改查

  2. 【專有網(wǎng)絡(luò)配置】選項(xiàng)中,選擇您在步驟一中創(chuàng)建的 VPC 網(wǎng)絡(luò),交換機(jī)、安全組。

  3. 【權(quán)限配置】選項(xiàng)中,選擇【新建角色】,點(diǎn)擊【點(diǎn)擊授權(quán)】,在角色快速創(chuàng)建頁(yè)面,點(diǎn)擊【同意授權(quán)】。

    • 這步的操作是授予函數(shù)計(jì)算對(duì) ENI 的操作權(quán)限,函數(shù)計(jì)算訪問(wèn) VPC 中資源需要的權(quán)限請(qǐng)參考文章 配置函數(shù)計(jì)算訪問(wèn) VPC 內(nèi)的資源

  4. 點(diǎn)擊確定,新建服務(wù)完畢。

函數(shù)編寫(xiě)與調(diào)試

下面演示 Python3 開(kāi)發(fā)語(yǔ)言訪問(wèn) MongoDB 數(shù)據(jù)庫(kù)函數(shù)示例創(chuàng)建:

使用 Fun 工具在建立存放代碼和依賴模塊目錄下安裝依賴和項(xiàng)目部署。

  1. 建立一個(gè)目錄,用于存放代碼和依賴模塊,在該目錄下新建 template.yml 文件,例如 /tmp/code/template.yml,內(nèi)容為:

    ROSTemplateFormatVersion: '2015-09-01'
    Transform: 'Aliyun::Serverless-2018-04-03'
    Resources:
     MongoDB-test:
       Type: 'Aliyun::Serverless::Service'
       Properties:
         Description: This is MongoDB service
         Role: 'acs:ram::XXXX:role/fc-public-test'
         LogConfig:
           Project: XXX
           Logstore: XXX
         VpcConfig:
           VpcId: vpc-XXXX
           VSwitchIds:
             - vsw-XXX
           SecurityGroupId: sg-XXXX
         InternetAccess: true
       python-test:
         Type: 'Aliyun::Serverless::Function'
         Properties:
           Handler: 'index.handler'
           Runtime: python3
           Timeout: 10
           MemorySize: 128
           CodeUri: './'
  2. 在該目錄下創(chuàng)建 Funfile 文件內(nèi)容為:

    RUNTIME python3
    RUN fun-install pip install pymongo
  3. 執(zhí)行fun install命令安裝依賴:

     $ fun install
     using template: template.yml
     start installing function dependencies without docker
     安裝過(guò)程。。。。
     Install Success
  4. 在函數(shù)根目錄下新建代碼文件,例如 /tmp/code/index.py,在代碼中使用 pymongo :

    # -*- coding: utf-8 -*-
    import uuid
    from pymongo import MongoClient
    def handler(event, context):
         CONN_ADDR1 = 'dds-XXX.mongodb.rds.aliyuncs.com:3717'
         CONN_ADDR2 = 'dds-XXXX.mongodb.rds.aliyuncs.com:3717'
         REPLICAT_SET = 'XXX'
         username = 'XXX'
         password = 'XXXX'
         #獲取mongoclient
         client = MongoClient([CONN_ADDR1, CONN_ADDR2], replicaSet=REPLICAT_SET)
         #授權(quán). 這里的user基于admin數(shù)據(jù)庫(kù)授權(quán)
         client.admin.authenticate(username, password)
         #使用test數(shù)據(jù)庫(kù)的collection:testColl做例子, 插入doc, 然后根據(jù)DEMO名查找
         demo_name = 'python-' + str(uuid.uuid1())
         print ('demo_name:'+ demo_name)
         doc = dict(DEMO=demo_name, MESG="Hello ApsaraDB For MongoDB")
         doc_id = client.test.testColl.insert(doc)
         for d in client.test.testColl.find(dict(DEMO=demo_name)):
             print ('find documents:'+ str(d))
         return 'success'
  5. 使用 fun 工具部署:

     $ fun deploy
     using template: template.yml
     using region: cn-hangzhou
     using accountId: ***********3743
     using accessKeyId: ***********Ptgk
     using timeout: 60
     部署過(guò)程。。。
             function python-test deploy success
     service MongoDB-test deploy success

    登錄控制臺(tái),即可看到相關(guān)的服務(wù)、函數(shù)被創(chuàng)建成功,且觸發(fā)執(zhí)行可以返回正確的結(jié)果。

通過(guò)本文介紹可以快速實(shí)現(xiàn)函數(shù)計(jì)算訪問(wèn) Mongo 數(shù)據(jù)庫(kù)。

使用函數(shù)計(jì)算帶來(lái)的優(yōu)勢(shì):

  1. 無(wú)需采購(gòu)和管理服務(wù)器等基礎(chǔ)設(shè)施,只需專注業(yè)務(wù)邏輯的開(kāi)發(fā),可以大幅縮短項(xiàng)目交付時(shí)間和人力成本;

  2. 提供日志查詢、性能監(jiān)控、報(bào)警等功能快速排查故障;

  3. 免運(yùn)維,毫秒級(jí)別彈性伸縮,快速實(shí)現(xiàn)底層擴(kuò)容以應(yīng)對(duì)峰值壓力,性能優(yōu)異;

  4. 成本極具競(jìng)爭(zhēng)力;

關(guān)于函數(shù)計(jì)算如何訪問(wèn) Mongo 數(shù)據(jù)庫(kù)就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

網(wǎng)頁(yè)名稱:函數(shù)計(jì)算如何訪問(wèn)Mongo數(shù)據(jù)庫(kù)
標(biāo)題路徑:http://www.ekvhdxd.cn/article38/ighcsp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、手機(jī)網(wǎng)站建設(shè)小程序開(kāi)發(fā)、域名注冊(cè)、靜態(tài)網(wǎng)站軟件開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司