2024国产成人精品免费视频|日本免费一区二区三区毛片|久久97超碰色中文字幕|亚洲天堂a中文字幕

php不能打開處理比較大圖片的解決方案

2022-05-24 12:35 欄目:技術(shù)開發(fā) 查看(4707)

今天某用戶反饋發(fā)布一條內(nèi)容后,整個(gè)后臺(tái)管理列表打不開,而且網(wǎng)站首頁(yè)打開也是空白的。通過定位發(fā)現(xiàn)是這條內(nèi)容上傳了一張近一億像素的圖片,系統(tǒng)在進(jìn)行圖片縮略處理的時(shí)候直接卡死了(該系統(tǒng)基于thinkphp開發(fā),卡在了\think\Image::open方法處)。那么如何避免這種問題呢,主要有如下幾種解決方案:

1、最粗暴的方式:增加腳本運(yùn)行內(nèi)存限制和時(shí)間限制。

在默認(rèn)狀態(tài)下php安裝后,腳本的的內(nèi)存限制是128M,如果一次處理過大的任務(wù),則可能超過所允許的內(nèi)存量而出錯(cuò)。可以在php代碼處加上內(nèi)存限制參數(shù)值設(shè)定,如下:

ini_set("memory_limit", "512M"); //默認(rèn)一般是128M

也可以直接修改php的配置文件php.ini進(jìn)行修改

memory_limit = 512M

QQ截圖20220524122423

這種方式適合網(wǎng)站性能要求不是特別高且服務(wù)器內(nèi)存不是太小的時(shí)候,否則如果頻繁運(yùn)行較大任務(wù)占用內(nèi)存資源,勢(shì)必會(huì)影響系統(tǒng)性能。

2、把壓力轉(zhuǎn)給他人的方式:使用圖片云存儲(chǔ),在云端進(jìn)行圖片處理。

系統(tǒng)圖片直接上傳到專門的圖片存儲(chǔ)云服務(wù)(如阿里云OSS等),這些云服務(wù)有豐富的在線處理功能,如常用的圖片壓縮、剪切等,云服務(wù)提供的功能可以完全滿足絕大多數(shù)場(chǎng)景的需求。而且云服務(wù)作為專業(yè)的服務(wù)平臺(tái),一般已經(jīng)考慮了各種極端情況,比我們自己寫的代碼要考慮得更加全面。最重要的是,交給云服務(wù)處理這些任務(wù)不占用任何網(wǎng)站系統(tǒng)本身的系統(tǒng)資源。

3、經(jīng)濟(jì)的方式:上傳前進(jìn)行圖片壓縮。

除了個(gè)別需要使用原圖的場(chǎng)景,在現(xiàn)實(shí)應(yīng)用中并不需要使用圖片原圖(比如文章配圖、封面圖等),一般不超過2000×2000px,沒必要存儲(chǔ)超大的原圖(現(xiàn)在即便手機(jī)拍出來的圖片動(dòng)不動(dòng)就是上億像素的)。所以可以在上傳到系統(tǒng)服務(wù)端前,在用戶前端就完成圖片的壓縮上傳。

這樣對(duì)于網(wǎng)站系統(tǒng)來講,不管是存儲(chǔ)在服務(wù)器本地還是云存儲(chǔ)服務(wù)上,都可以節(jié)省大量的帶寬資源和計(jì)算資源;對(duì)于網(wǎng)站使用的用戶來講,上傳的時(shí)候也可以減少帶寬流量的浪費(fèi);是一種很經(jīng)濟(jì)的解決方式。

與我們的項(xiàng)目經(jīng)理聯(lián)系
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流

轉(zhuǎn)載請(qǐng)注明出處:php不能打開處理比較大圖片的解決方案 - 微構(gòu)網(wǎng)絡(luò)
分享:
泉州市| 达日县| 昌乐县| 通辽市| 胶南市| 沂源县| 安乡县| 方山县| 宜丰县| 化隆| 泌阳县| 昌都县| 长岭县| 积石山| 敦煌市| 孟州市| 台安县| 高陵县| 浮梁县| 南安市| 庆城县| 韩城市| 衡阳市| 肥西县| 桐梓县| 黄浦区| 平塘县| 汽车| 获嘉县| 台北县| 阜新| 肇庆市| 开平市| 清涧县| 定南县| 宜章县| 成武县| 华池县| 茶陵县| 上思县| 东乡族自治县|