php序列化和反序列化,php七牛持久化處理,使用七牛自定義數據處理范例

 2023-10-08 阅读 20 评论 0

摘要:1.下載自定義處理數據命令行工具:下載地址:https://developer.qiniu.com/dora/tools/1222/qdoractl下載linux64位版,因為我們的docker安裝在ubuntu 14.04 64位版本下的。下載后將文件名修改為qdoractl,同時賦予777權限:chmod 777 qdoractl

1.下載自定義處理數據命令行工具:

下載地址:https://developer.qiniu.com/dora/tools/1222/qdoractl

下載linux64位版,因為我們的docker安裝在ubuntu 14.04 64位版本下的。

下載后將文件名修改為qdoractl,同時賦予777權限:chmod 777 qdoractl

此時可以通過./qdoractl來執行該工具了,為了簡便,將qdoractl復制到/bin目錄下,這樣就可以直接運行qdoractl來執行,而不用在前面加./

php序列化和反序列化。2.上傳自定義數據處理程序

qdoractl push

為鏡像的名字,可以通過docker images查看

push時,如果出現Error response from daemon: client and server don’t have same version (client : 1.20, server: 1.18)等錯誤,可以先升級docker

升級方法。運行以下命令:

curl -sSL https://get.daocloud.io/docker | sh

php yii框架,升級后再試一般就可以了,如果升級后,輸入docker提示no such file,可以通過運行/usr/bin/docker來代替。

push成功后,通過qdoractl image可以查看已上傳的鏡像列表。

3.創建新版本

此時登錄七牛控制臺,產品列表,數據處理,選擇剛剛創建的自定義數據處理V2,選擇實例名稱,點擊發布新版本。

27d41e8009d777cf2593e757eda588bc.png

填寫版本號,選擇鏡像,選擇配置

展開高級配置,填寫健康配置,點擊確認創建

d92f84afab5d8accfaa6b672e402faca.png

php反序列化漏洞利用、最后調整實例:

81369b88343f046e5e502ae5c56dbfcd.png

點擊保存。

4.監控自定義處理數據實例的運行

建議一開始只設置1個實例,這樣可以方便我們調試。

4.1 查看運行的實例

qdoractl instance --all ? ? ? ? ? #為自定義數據處理的名稱

php數組底層實現,通過該命令可以查看到當前正在運行的實例的信息,我們主要是為了獲取實例的ID:

80b717b6d64155bb11740f8f43d3bb3b.png

4.2 登錄運行的實例

qdoractl attach --region --instance ? ? #region為區域名稱

運行以上命令即可登錄該實例,便于我們在線調試及查看錯誤日志等信息

1fdc8ef8175158037b9f2223416fefc8.png

5 調用自定義處理實例

5.1 通過在url后加?/同步調用

php處理百萬數據方案?如果處理數據量較小,速度快,可以使用該方式。調用時,可以通過網絡分析來查看網絡返回值,以此來調試。

如果需要以指定文件名另存為到指定空間,可以通過管道處理:

?/|saveas/

獲取示例:

需要先安裝好七牛的PHP SDK,下載地址:https://github.com/qiniu/php-sdk/releases?ref=developer.qiniu.com

$key = 'convert/201706/14/FhsNLQcihnPcy-VVGfUxX7GL_wPX.zip';

php反序列化漏洞原理。$pathinfo = pathinfo($key);

$entry = 'dedemaotest:'.$pathinfo['dirname'].'/c_'.$pathinfo['basename'];

$saveas = \Qiniu\base64_urlSafeEncode($entry); //需要先提前下載并安裝好七牛的PHP SDK

5.2 通過持久化處理接口異步調用

如果是像音視頻轉碼等需要較長時間來處理的,建議使用該方式來異步調用。

調用示例:

php實時刷新數據、頭部需要包含這三個信息:

2250ba31b9af55b86d3eca568c5b4ca7.png

其中Authorization的值為QBox

AccessToken的生成算法:

如果你下載了PHP的SDK,可以直接調用\Qiniu\Auth里面的authorization方法。

獲取AccessToken示例:

$key = 'convert/201706/14/FhsNLQcihnPcy-VVGfUxX7GL_wPX.zip';

php快速開發框架、$pathinfo = pathinfo($key);

$entry = 'dedemaotest:'.$pathinfo['dirname'].'/c_'.$pathinfo['basename'];

$saveas = \Qiniu\base64_urlSafeEncode($entry);

$authorization = $auth->authorization('http://api.qiniu.com/pfop/','bucket='.urlencode('dedemaotest').'&key='.urlencode('convert/201706/14/FhsNLQcihnPcy-VVGfUxX7GL_wPX.zip').'&fops='.urlencode('dedemaotest/convert-v3|saveas/'.$saveas).'&notifyURL='.urlencode('http://www.dedemao.com/jaychou884358/admin.php/Upload/persistent_notify').'&force=&pipeline=','application/x-www-form-urlencoded');

說明:

notifyURL為數據異步處理完成后的回調地址,便于第一時間獲取數據處理狀態。

php循環處理大量數據、POST的body應包含的信息:

26f79c14c580c79d18424d64165207b1.png

post提交后會返回一個,該ID可用于查詢處理的狀態,通過調用以下接口來獲取:

http://api.qiniu.com/status/get/prefop?id=

參考:https://developer.qiniu.com/dora/tools/1222/qdoractl ?(自定義數據處理命令行工具)

參考:https://developer.qiniu.com/dora/manual/3686/pfop-directions-for-use (持久化處理)

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/129213.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息