摘要:傳統(tǒng)與比較傳統(tǒng)的框架每次請求都會去重新加載配置文件。開啟情況下還是有執(zhí)行的過程時間框架讀取到配置文件的內(nèi)容保存到系統(tǒng)內(nèi)存下一次請求直接去內(nèi)存讀取數(shù)據(jù)。也提供非常簡單的配置實現(xiàn)。
傳統(tǒng)MVC 與 Asf 比較 傳統(tǒng)的MVC框架
每次請求都會去重新加載配置文件。即使配置文件內(nèi)容沒有更新, 也會去重新加載一次。這是一個很不好的設(shè)計。(開啟Opcache情況下, 還是有執(zhí)行的過程時間)
Asf框架讀取到配置文件的內(nèi)容保存到系統(tǒng)內(nèi)存, 下一次請求直接去內(nèi)存讀取數(shù)據(jù)。Asf 也提供非常簡單的配置實現(xiàn) Config Cache。
什么場景下開啟Config Cache合適?建議在Web應(yīng)用場景下都開啟吧, 后面版本可能會默認啟用
在CLI、多線程模式下開啟同樣生效, 只是PHP腳本每次執(zhí)行完就釋放了
支持數(shù)據(jù)類型有: strings, arrays, integers, boolean, doubles, floats, null
流程圖 開啟緩存方法框架入口方式加載php/ini配置文件run();AsfConfigPhp 加載php配置文件AsfConfigIni 加載ini配置文件讀取配置內(nèi)容方法getConfig()->toArray()); print_r(AsfConfig::get()->toArray());性能測試在開啟 Opcache 情況下, 簡單做了一個 Config Cache 性能測試, ab -c100 -n10000
配置文件中配置項復雜程度與性能指標是有直線聯(lián)系的喲
開啟緩存 asf.cache_config_enable = 1Total transferred: 16109994 bytes HTML transferred: 14259994 bytes Requests per second: 6859.01 [#/sec] (mean) Time per request: 14.579 [ms] (mean) Time per request: 0.146 [ms] (mean, across all concurrent requests)無緩存Total transferred: 16080000 bytes HTML transferred: 14230000 bytes Requests per second: 6398.22 [#/sec] (mean) Time per request: 15.629 [ms] (mean) Time per request: 0.156 [ms] (mean, across all concurrent requests)提示Cache Config 不是基于共享內(nèi)存的, 是基于 PHP 進程的喲, 不會有共享內(nèi)存鎖的問題。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/28754.html
摘要:一是什么全稱用語言編寫的輕量級擴展框架專注于開發(fā)。這里只是給出了一種測試方法通過多次不同并發(fā)數(shù)測試結(jié)果得知與原生性能消耗是。業(yè)務(wù)開發(fā)速度結(jié)論采用框架開發(fā)業(yè)務(wù)代碼量能節(jié)約。 showImg(https://segmentfault.com/img/bVbamHp?w=320&h=320); 一、Asf 是什么? 全稱 API Services Framework, 用C語言編寫的輕量級P...
摘要:一什么是預(yù)警預(yù)警可以理解成我們?nèi)粘I钪械捏w檢,每個人不管是富貴,還是貧窮,有一個健康的身體才是事業(yè)和生活的基礎(chǔ)。 一、什么是預(yù)警? 預(yù)警可以理解成我們?nèi)粘I钪械捏w檢,每個人不管是富貴,還是貧窮,有一個健康的身體才是事業(yè)和生活的基礎(chǔ)。 項目的健康我們形象比喻成1,項目的N多子功能/子模塊,比如登錄模塊、注冊模塊等都是1后面的0,如果項目都出問題了(比如 Http Status Cod...
摘要:是一個基于擴展實現(xiàn)的輕量級高性能的常駐內(nèi)存型的和應(yīng)用服務(wù)框架高度封裝了,,服務(wù)器,以及基于實現(xiàn)可擴展的服務(wù),同時支持包方式安裝部署項目?;趯嵱茫橄笫录幚眍?,實現(xiàn)與底層的回調(diào)的解耦,支持同步異步調(diào)用,內(nèi)置等常用組件等。 swoolefy swoolefy是一個基于swoole擴展實現(xiàn)的輕量級高性能的常駐內(nèi)存型的API和Web應(yīng)用服務(wù)框架,高度封裝了http,websocket,ud...
摘要:介紹是基于開發(fā)的協(xié)程開發(fā)框架,擁有常駐內(nèi)存協(xié)程異步非阻塞等優(yōu)點。宇潤我在年開發(fā)并發(fā)布了第一個框架,一直維護使用至今,非常穩(wěn)定,并且有文檔。于是我走上了開發(fā)的不歸路 showImg(https://segmentfault.com/img/bVbcxQH?w=340&h=160); 介紹 IMI 是基于 Swoole 開發(fā)的協(xié)程 PHP 開發(fā)框架,擁有常駐內(nèi)存、協(xié)程異步非阻塞IO等優(yōu)點。...
摘要:服務(wù)器定時任務(wù)服務(wù)器定時任務(wù)需要你是獨立的服務(wù)器,或者是,總之就是對系統(tǒng)的配置有足夠的權(quán)限,虛擬空間就不要折騰這個方法了,因為你沒有權(quán)限。 文章轉(zhuǎn)載自:問說網(wǎng) ? 詳解PHP設(shè)置定時任務(wù)的實現(xiàn)方法地址:http://www.uedsc.com/php-timing-task.html 定時運行任務(wù)對于一個網(wǎng)站來說,是一個比較重要的任務(wù),比如定時發(fā)布文檔,定時清理垃圾信息等,現(xiàn)在的網(wǎng)站大...
閱讀 1734·2021-11-22 12:09
閱讀 1462·2019-08-30 13:22
閱讀 2094·2019-08-29 17:00
閱讀 2644·2019-08-29 16:28
閱讀 2956·2019-08-26 13:51
閱讀 1183·2019-08-26 13:25
閱讀 3245·2019-08-26 12:14
閱讀 3015·2019-08-26 12:14