快速解決ThinkPHP5.1出現MISS快取未命中問題
本篇文章為大家帶來了關於ThinkPHP5.1的相關知識,其中主要介紹了CDN是什麼?為什麼要使用它?怎麼解決ThinkPHP5.1 MISS快取未命中問題?有興趣的朋友下面一起來看看吧,希望對大家有幫助。
ThinkPHP5.1使用CDN加速-MISS快取未命中解決
在單獨給首頁配置CDN加速後,出現了X-Cache: MISS TCP_MISS dirn:-2:-2,MISS也就是快取沒有被命中。這個問題不是配置錯了,而框架問題。
什麼要使用CDN?
「cdn簡介CDN的全名是Content Delivery Network,即內容分發網路。
為什麼要使用CDN?
##CDN就近節點訪問,提高了網站加載速度,降低延時;能起到分流作用,減輕伺服器負載,使用動靜分離提高網站訪問速度。配置實現
這個呢,我是部署在了生產環境,實際測試大並發高流量處理,當然了,也有很多的不足。環境
#伺服器:騰訊雲端系統:CentOS7框架:ThinkPHP5.1使用阿里雲OSS CDN並且設定快取##當然還要有經過備案的網域名稱。
關於怎麼使用阿里雲OSS物件儲存系統,Laravel6.x上傳影片到阿里雲Oss物件儲存這篇文章記錄過。
bucket建立完成後,可以在列表中看到'阿里雲CDN 加速',點擊這個進行相關的CDN操作,配置完後需要在域名中進行解析。
問題在單獨給首頁配置CDN加速後,出現了X-Cache: MISS TCP_MISS dirn:-2:-2,MISS也就是快取沒有被命中。這個問題不是配置錯了,而框架問題。
#解決方法如下:第一步:public/index.php讀取/設定快取限制器
<?php
namespace think;
// 设置缓存限制
session_cache_limiter('public');
require __DIR__ . '/../thinkphp/base.php';
Container::get('app')->run()->send();
// 文件位置: config/app.php
'request_cache' => true,
#如下壓測是經過了CDN OSS之後的結果,可以看到qps可以達到573
$ ab -c100 -n1000 你的页面URL This is ApacheBench, Version 2.3 <$Revision: 1430300 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking miaosha.nikexu.com (be patient) Completed 100 requests Completed 200 requests Completed 300 requests Completed 400 requests Completed 500 requests Completed 600 requests Completed 700 requests Completed 800 requests Completed 900 requests Completed 1000 requests Finished 1000 requests Server Software: Tengine Server Hostname: miaosha.nikexu.com Server Port: 80 Document Path: / Document Length: 774 bytes Concurrency Level: 100 Time taken for tests: 1.745 seconds Complete requests: 1000 Failed requests: 0 Write errors: 0 Total transferred: 1403829 bytes HTML transferred: 774000 bytes Requests per second: 573.16 [#/sec] (mean) Time per request: 174.472 [ms] (mean) Time per request: 1.745 [ms] (mean, across all concurrent requests) Transfer rate: 785.76 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 15 17 1.5 16 25 Processing: 18 91 113.4 71 1195 Waiting: 18 90 113.4 71 1195 Total: 36 107 113.4 87 1212 Percentage of the requests served within a certain time (ms) 50% 87 66% 99 75% 103 80% 105 90% 120 95% 195 98% 437 99% 834 100% 1212 (longest request)
在來看看500個並發的壓測。
ab -c500 -n10000 你的页面URL Requests per second: 965.61 [#/sec] (mean) Time per request: 517.806 [ms] (mean) Time per request: 1.036 [ms] (mean, across all concurrent requests) Percentage of the requests served within a certain time (ms) 50% 257 66% 319 75% 541 80% 1043 90% 1102 95% 1281 98% 1560 99% 1821 100% 3771 (longest request)
透過這個兩個手段,已經可以看到還並發量提供,500的並發量,80%的用戶可以在1s左右打開。在沒有使用CDN OSS前,我壓測的結果是150的並發,CPU就衝到了90%。使用OSS CDN的優勢就不言而喻了。
推薦學習:《
thinkPHP影片教學以上是快速解決ThinkPHP5.1出現MISS快取未命中問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

執行 ThinkPHP 專案需要:安裝 Composer;使用 Composer 建立專案;進入專案目錄,執行 php bin/console serve;造訪 http://localhost:8000 查看歡迎頁面。

ThinkPHP 擁有多個版本,針對不同 PHP 版本而設計。主要版本包括 3.2、5.0、5.1 和 6.0,而次要版本用於修復 bug 和提供新功能。目前最新穩定版本為 ThinkPHP 6.0.16。在選擇版本時,需考慮 PHP 版本、功能需求和社群支援。建議使用最新穩定版本以獲得最佳性能和支援。

ThinkPHP Framework 的本機運作步驟:下載並解壓縮 ThinkPHP Framework 到本機目錄。建立虛擬主機(可選),指向 ThinkPHP 根目錄。配置資料庫連線參數。啟動 Web 伺服器。初始化 ThinkPHP 應用程式。存取 ThinkPHP 應用程式 URL 運行。

Laravel 和 ThinkPHP 框架的效能比較:ThinkPHP 效能通常優於 Laravel,專注於最佳化和快取。 Laravel 性能良好,但對於複雜應用程序,ThinkPHP 可能更適合。

《開發建議:如何利用ThinkPHP框架實現非同步任務》隨著網路技術的快速發展,Web應用程式對於處理大量並發請求和複雜業務邏輯的需求也越來越高。為了提高系統的效能和使用者體驗,開發人員常常會考慮利用非同步任務來執行一些耗時操作,例如發送郵件、處理文件上傳、產生報表等。在PHP領域,ThinkPHP框架作為一個流行的開發框架,提供了一些便捷的方式來實現非同步任務。

ThinkPHP 安裝步驟:準備 PHP、Composer、MySQL 環境。使用 Composer 建立專案。安裝 ThinkPHP 框架及相依性。配置資料庫連線。產生應用程式碼。啟動應用程式並造訪 http://localhost:8000。

ThinkPHP 是一款高效能的 PHP 框架,具備快取機制、程式碼最佳化、平行處理和資料庫最佳化等優勢。官方性能測試顯示,它每秒可處理超過 10,000 個請求,實際應用中被廣泛用於京東商城、攜程網等大型網站和企業系統。

基於ThinkPHP6和Swoole的RPC服務實作檔案傳輸功能引言:隨著網路的發展,檔案傳輸在我們的日常工作中變得越來越重要。為了提高檔案傳輸的效率和安全性,本文將介紹基於ThinkPHP6和Swoole的RPC服務實作檔案傳輸功能的具體實作方法。我們將使用ThinkPHP6作為Web框架,利用Swoole的RPC功能來實現跨伺服器的檔案傳輸。一、環境準
