Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
先介紹下在本文出現(xiàn)的幾個(gè)比較重要的概念:
函數(shù)計(jì)算(Function Compute): 函數(shù)計(jì)算是一個(gè)事件驅(qū)動(dòng)的服務(wù),通過函數(shù)計(jì)算,用戶無需管理服務(wù)器等運(yùn)行情況,只需編寫代碼并上傳。函數(shù)計(jì)算準(zhǔn)備計(jì)算資源,并以彈性伸縮的方式運(yùn)行用戶代碼,而用戶只需根據(jù)實(shí)際代碼運(yùn)行所消耗的資源進(jìn)行付費(fèi)。
Fun: Fun 是一個(gè)用于支持 Serverless 應(yīng)用部署的工具,能幫助您便捷地管理函數(shù)計(jì)算、API 網(wǎng)關(guān)、日志服務(wù)等資源。它通過一個(gè)資源配置文件(template.yml),協(xié)助您進(jìn)行開發(fā)、構(gòu)建、部署操作。
litemall 是一個(gè)基于 Spring Boot、Vue、微信小程序等技術(shù)開發(fā)的商場(chǎng)系統(tǒng)。它包括 Spring Boot 后端 + Vue 管理員前端 + 微信小程序用戶前端 + Vue 商城移動(dòng)端。
本文演示如何將該商城應(yīng)用的 Spring Boot 后端、Vue 管理員前端、Vue 商城移動(dòng)端三個(gè)組件遷移到函數(shù)計(jì)算。
下面是一個(gè)已經(jīng)將到函數(shù)計(jì)算應(yīng)用示例效果演示。
打開 http://litemall.mofangdegisn.cn 顯示登陸頁面:
使用默認(rèn)的賬戶即可登陸。完成后,會(huì)進(jìn)入到后臺(tái)管理頁面:
可以在后臺(tái)管理頁面添加商品類目、上架商品、用戶管理、系統(tǒng)管理等等。
使用手機(jī)打開網(wǎng)址 http://litemall.mofangdegisn.cn/vue/index.html ,可以打開輕商城:
可以在輕商城中瀏覽商品,并將喜歡的商品添加到購物車中(暫不支持支付):
執(zhí)行下面的命令克隆項(xiàng)目:
git clone git@github.com:tanhe123/litemall.git
如果沒有安裝 Git,也可以直接在頁面點(diǎn)擊 Downlaoad Zip 直接下載代碼并解壓:
為我們準(zhǔn)備好的域名,添加 CNAME 記錄
在 MYSQL 數(shù)據(jù)庫上創(chuàng)建一個(gè)名為 litemall 的 database,然后將 litemall-db/sql 中的 litemall_table.sql 以及 litemall_data.sql 兩個(gè)文件導(dǎo)入到該數(shù)據(jù)庫中。
如果使用的是 aliyun RDS,可以直接通過下面的方法導(dǎo)入:
修改 template.yml 中的 SPRING_DATASOURCE_DRUID_URL 為數(shù)據(jù)庫地址,修改 SPRING_DATASOURCE_DRUID_USERNAME 為數(shù)據(jù)庫用戶名,修改 SPRING_DATASOURCE_DRUID_PASSWORD 為用戶名密碼。
最后將 template.yml 中的域名 litemall.mofangdegisn.cn 替換為自己域名。
對(duì)于 linux 或者 mac,可以直接執(zhí)行項(xiàng)目?jī)?nèi)的 ./install.sh,該命令會(huì)分別進(jìn)入到 litemall-admin 以及 litemall-vue 執(zhí)行 cnpm install。
假如我們要使用的域名是 http://litemall.mofangdegisn.cn ,執(zhí)行以下命令:
DOMAIN=http://litemall.mofangdegisn.cn ./deploy.sh
需要將上面的域名替換為用戶自己的域名,執(zhí)行完畢后,完成部署。
打開配置的域名即可看到效果。
通過本文介紹的技巧,我們實(shí)現(xiàn)了快速部署商城應(yīng)用到函數(shù)計(jì)算。
作者:tanhe123
本文為阿里云原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。
上篇《即學(xué)即會(huì) Serverless | 如何解決 Serverless 應(yīng)用開發(fā)部署的難題》中,我們闡述了工具鏈的重要性,那么本文將帶領(lǐng)各位快速實(shí)現(xiàn) Serverless Devs 入門。
https://help.aliyun.com/document_detail/195474.html
$ npminstall @serverless-devs/s -g
@serverless-devs/s:2.0.89, @serverless-devs/core: 0.1.7, darwinarwin-x64, node-v12.15.0
獲取密鑰
配置 Serverless Devs 的阿里云密鑰,一般需要密鑰信息,獲取頁面為:
https://usercenter.console.aliyun.com/#/manage/ak
關(guān)于密鑰信息的獲取流程如下:打開獲取密鑰頁面;https://usercenter.console.aliyun.com/#/manage/ak
并獲取密鑰信息 :
引導(dǎo)式密鑰配置
通過引導(dǎo)式進(jìn)行密鑰配置:可以通過 s config add 命令,進(jìn)行引導(dǎo)式創(chuàng)建:
執(zhí)行 s config add ,并選擇 Alibaba Cloud (alibaba):
$ s config add? Please select a template: Alibaba Cloud(alibaba)Refer to the document for alibaba key: http://config.devsapp.net/account/alibaba? AccountID ()
此時(shí),可以按照引導(dǎo),進(jìn)行密鑰的配置:
? Please select a template: Alibaba Cloud(alibaba)
Refer to the document for alibaba key: http://config.devsapp.net/account/alibaba
? AccessKeyID 此處填寫AccessKeyID
? AccessKeySecret 此處填寫AccessKeySecret
? Please create alias for key pair. Ifnot, please enter to skip alibaba-access
Alias: alibaba-access AccountID:此處填寫AccountID
AccessKeyID: 此處填寫AccessKeyID
AccessKeySecret: 此處填寫AccessKeySecret
Configuration successful
命令式密鑰配置
為了在一些自動(dòng)化流程中可以更好的使用 Serverless Devs,所以除了通過引導(dǎo)式進(jìn)行密鑰的配置, Serverless Devs 還支持通過命令行非交互式進(jìn)行密鑰的配置。
同樣以阿里云密鑰配置為例,可以直接通過參數(shù)將密鑰信息傳入:
$ s configadd --AccessKeyID myAccessKeyID --AccessKeySecret myAccessKeySecret -a demoAlias: demoAccountID: myAccountIDAccessKeyID: myAccessKeyIDAccessKeySecret: myAccessKeySecretConfigurationsuccessful
通過環(huán)境變量配置
有相當(dāng)一部分的開發(fā)者會(huì)將密鑰信息放在環(huán)境變量中,這樣在使用工具的時(shí)候,就需要從環(huán)境變量中讀取密鑰信息,此時(shí),通過環(huán)境變量配置密鑰的方法就顯得尤為重要,為此,Serverless Devs 提供了兩種通過環(huán)境變量配置密鑰的方法:
方法 1: 直接通過 config add 進(jìn)行配置
這種方法很簡(jiǎn)單,基本和上面所描述的命令式密鑰配置是類似的,只不過傳入的不是固定值,而是環(huán)境變量,例如在環(huán)境變量中有:
ALIBABA_CLOUD_ACCESS_KEY_ID、ALIBABA_CLOUD_ACCESS_KEY_SECRET 等相關(guān)內(nèi)容;
此時(shí)可以通過 s configadd 命令進(jìn)行添加:
$ s config add -adefault-aliyun -kl AccessKeyID,AccessKeySecret -il${ALIBABA_CLOUD_ACCESS_KEY_ID},${ALIBABA_CLOUD_ACCESS_KEY_SECRET}
方法 2: 通過指定名稱使用環(huán)境變量密鑰 通過指定環(huán)境變量的名字進(jìn)行配置:例如當(dāng)前有阿里云密鑰對(duì):
AccountID:temp_accountid
AccessKeyID:temp_accesskeyid
AccessKeySecret:temp_accesskeysecret
此時(shí)可以在環(huán)境變量中可以命名 key 為*********_serverless_devs_access,
例如 default_serverless_devs_access,value 為 JSON 字符串,如:
Key:default_serverless_devs_access
Value:{\"AccessKeyID\":\"temp_accesskeyid\",\"AccessKeySecret\":\"temp_accesskeysecret\"}
密鑰使用的注意事項(xiàng)
安全相關(guān) 云賬號(hào) AccessKey 是您訪問阿里云 API 的密鑰,具有該賬戶完全的權(quán)限,請(qǐng)您務(wù)必妥善保管!不要通過任何方式(e.g. Github)將 AccessKey 公開到外部渠道,以避免被他人利用而造成安全威脅 。強(qiáng)烈建議開發(fā)者遵循阿里云安全最佳實(shí)踐 ,使用 RAM 子用戶 AccessKey 來進(jìn)行 API 調(diào)用。
關(guān)于密鑰配置中 Alias 的實(shí)際思路
在 Serverless Devs 中,除了配置云廠商所提供的密鑰信息之外,還需要額外進(jìn)行 Alias 的設(shè)置,這里所謂的 Alias 是指對(duì)密鑰進(jìn)行的別名設(shè)置。由于 Serverless Devs 支持多密鑰的配置和管理,所以一般情況下,一個(gè)別名對(duì)應(yīng)一個(gè)密鑰對(duì)。相關(guān)的最佳實(shí)踐可以是:
●有兩個(gè)賬號(hào),分別是阿里云賬號(hào)和騰訊云賬號(hào),那么配置密鑰的時(shí)候就可以設(shè)置別名 alibaba、tencent,在使用的時(shí)候,通過引用不同別名使用不同的密鑰,以防止每次切換密鑰的時(shí)候,進(jìn)行密鑰重新配置;
●自己擁有兩個(gè)環(huán)境的密鑰,一個(gè)是測(cè)試環(huán)境密鑰 test,一個(gè)是線上環(huán)境密鑰 release,當(dāng)開發(fā)完成之后需要把業(yè)務(wù)部署到不同的環(huán)境下,可以通過指定密鑰的形式,直接進(jìn)行部署,而無需因?yàn)槊荑€的切換反復(fù)進(jìn)行密鑰的重新配置;
密鑰使用方法 在 Serverless Devs 中,密鑰的使用主要在兩個(gè)層面:
●命令行層面:在命令行中使用的時(shí)候,可以直接通過-a/--access 參數(shù)進(jìn)行使用,例如在部署某業(yè)務(wù)的時(shí)候,可以通過 s deploy-a demo 指定使用 demo 密鑰對(duì);
●Yaml 配置文件層面:可以通過在 Yaml 中進(jìn)行密鑰對(duì)的指定,例如:
在 Yaml 的中直接指定 access,表示整個(gè)應(yīng)用都通過當(dāng)前密鑰對(duì)進(jìn)行部署,也可以在某個(gè)模塊/業(yè)務(wù)下指定當(dāng)前模塊/業(yè)務(wù)使用某指定的密鑰對(duì)進(jìn)行部署。
密鑰使用順序相關(guān)
密鑰支持多種形式的使用,也就會(huì)出現(xiàn)密鑰的使用的順序問題:
●通過 -a/--access 參數(shù)指定的密鑰信息
●使用已經(jīng)配置的 default 密鑰信息
●使用通過環(huán)境變量配置的 ``default_serverless_devs_access` 密鑰信息
●不使用密鑰信息 / 進(jìn)入密鑰信息配置引導(dǎo) 具體的流程圖為:
密鑰的其他相關(guān)操作 在 Serverless Devs 中,除了配置密鑰之外還包括密鑰的修改、刪除和查看,此時(shí)可以通過 s config -h 進(jìn)行相關(guān)功能的查看:
●密鑰的查看,可以通過 s config get -h 查看幫助;
●密鑰的修改,可以重新進(jìn)行指定別名的密鑰的創(chuàng)建,并通過-f 參數(shù),強(qiáng)行覆蓋;
●密鑰的刪除,可以通過 s config delete-h 查看幫助;
Serverless Devs 可以通過指定格式的 Yaml 對(duì) Serverless 應(yīng)用進(jìn)行描述,在 Serverless Devs 的規(guī)定中,一個(gè) Yaml 可以被認(rèn)為是一個(gè) Serverless 應(yīng)用,在下篇文章中我會(huì)為大家具體介紹下 Yaml 的使用規(guī)范。
原文鏈接:http://click.aliyun.com/m/1000345819/
本文為阿里云原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。
家無論出遠(yuǎn)門,還是出外旅行,我想一定有過住酒店的經(jīng)歷,那么,住酒店,最怕被裝上攝像頭窺探你的隱私問題,特別是近年來興起的針孔攝像頭,又小又讓人難以捕捉,所以令我們感覺到隱私完全避無可避,沒有安全感。所以今天,小編來教大家怎么防針孔攝像頭。
要預(yù)防,首先要知道它的原理,針孔攝像頭,在夜間主要是靠紅外線來捕捉畫面,當(dāng)然如果房間光線良好,那畫面就更清晰。如果沒有紅外線功能的設(shè)想頭在夜晚無光線的情況下,是無法捕捉畫面的,就如手機(jī)照相沒有補(bǔ)光燈(閃光燈)一樣,照出來的是一團(tuán)黑。
下面我們來說說
如何檢查針孔攝像頭?
1、開啟手機(jī)照相功能
注意這里需要說明一點(diǎn)“5s手機(jī)攝像頭過濾了紅外線,所以無法檢查!”
2、關(guān)閉房間的燈,拉上窗簾,讓房間無一點(diǎn)光線,處于黑暗狀態(tài)
越黑檢查狀態(tài)越佳!然后打開手機(jī)照相功能,圍繞房間的轉(zhuǎn)一圈,并檢查房間的死角,天花板。電視,空調(diào)等等有可能安裝針孔攝像頭的地方。如有針孔攝像頭,那么手機(jī)上將看到,紅點(diǎn),有紅點(diǎn)就是攝像頭。
這是屬于安全問題,接下來的這篇淘寶文,雖然推廣了一些產(chǎn)品,但是教你在酒店別碰這些東西,很有用。
https://h5.m.taobao.com/daren/commonDetail.html?feedId=5690603193&accountId=1739653505
而在也有一篇閱讀量很高的文,也是酒店的注意事項(xiàng)。
http://temai.snssdk.com/article/article/index?id=756795&source_type=6&content_type=1&channel_refer=tt_article&view_from=channel&platform_type=
所以希望出外旅行,大家都能注意一些,畢竟自身的安全很重要。
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。