App開發

thinkphp部署阿裏雲函數計算

阿裏雲的servless基本都是基于docker,需要配置cpu和内存,根據指标來做彈性伸縮,還是比較麻煩。

阿裏雲函數計算,基于代碼塊+運行環境,按執行資源收費,内部也是彈性伸縮,但運維人員完全無感。

1 開通阿裏雲函數計算

https://fc.console.aliyun.com/fc/applications/cn-shanghai

2 創建應用(yòng),選擇php→Thinkphp框架

可(kě)以 使用(yòng)示例代碼包跑下demo,或者使用(yòng)自己項目代碼;

使用(yòng)自己項目代碼需要改造下代碼,主要是代碼目錄為(wèi)隻讀目錄,需要把runtime設置到/tmp/目錄

tp5設置示例:

namespace think; // ThinkPHP 引導文(wén)件 // 1. 加載基礎文(wén)件 define('RUNTIME_PATH',  '/tmp/'); require __DIR__ . '/base.php'; // 2. 執行應用(yòng) App::run()->send();

tp6設置示例:

namespace think; require __DIR__ . '/base.php';

$app = new App();
$app->setRuntimePath('/tmp/');
$http = ($app)->http;
$response = $http->run();
$response->send();
$http->send($response);
Untitled
Untitled

3 部署測試

使用(yòng)wrk簡單壓測了下,性能(néng)還是可(kě)以的:

wrk -d 10 -t 100 -c 1000 http://61763311-1577904969934260.test.functioncompute.com/

Untitled
Untitled

本地6c16G mbp:

Untitled
Untitled
Untitled
Untitled

tp應用(yòng)跑起來後會鏈接數據庫,性能(néng)差異有(yǒu)部分(fēn)是數據庫原因。

4 代碼更新(xīn)

目前發現隻能(néng)支持手動更新(xīn)代碼包,或者oss;希望後續改進,直接支持代碼庫最好

5 常見問題

https://help.aliyun.com/document_detail/56103.html

那些快被玩爛的app推廣方式:再不用(yòng)就沒機會了!
“新(xīn)零售”大潮中(zhōng),服飾品牌究竟如何為(wèi)線(xiàn)下門店(diàn)找新(xīn)增量?

留言

您的信息會被保密處理(lǐ). 必填字段 *

現在就與BNA技(jì )術專家交流

400-021-7895

App開發 · 小(xiǎo)程序開發 · 網站 · 電(diàn)商(shāng) · 微信 · 系統定制 · 網絡營銷

技(jì )術強團,源碼輸出,高端定制,0預付開工(gōng)
潛心緻力于技(jì )術開發,為(wèi)用(yòng)戶提供卓越的互聯網工(gōng)具(jù)
一手源碼工(gōng)廠-合同保障-免費技(jì )術服務(wù)

0.046074s