php web开发的不足之一:无法常驻内存
生活随笔
收集整理的這篇文章主要介紹了
php web开发的不足之一:无法常驻内存
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
新手之見,若有那里說錯請高手指點。
一個網站的后臺若是純用php編寫,在用戶在每次訪問此網站時,后臺都會為此次訪問重新創建所有內存。
前一段時間閑著沒事,準備學一門web語言,借此了解web程序的運作原理。在網上查了一些主流的web語言,得知php比java簡單,易上手,就選擇了學習php。在學習發現了php的一個問題,描述如下。
?? ?在網上搜“php的效率”時,看到了用php讀數據庫的實驗。個人覺得這樣的實驗對測php的效率沒有多大的意義。而且php與java的對比的最大區別不應該是什么php簡單(其實php也不簡單)應該是是否可以常駐內存(java的servlet在第一個用戶訪問時實例化,以后在來新的用戶訪問不會重新實例化)。
一個網站的后臺若是純用php編寫,在用戶在每次訪問此網站時,后臺都會為此次訪問重新創建所有內存。
前一段時間閑著沒事,準備學一門web語言,借此了解web程序的運作原理。在網上查了一些主流的web語言,得知php比java簡單,易上手,就選擇了學習php。在學習發現了php的一個問題,描述如下。
遇到問題:
?? ?在做一個個人的博客時,想要加載一些配置文件中的配置,這些配置是所有用戶通用的。我是這樣加載的,先創建一個字典,然后讀文件,將配置按key-value映射到字典中。問題來了,當一個用戶到來時,整個php的后臺都會跑一邊,用戶離開時,為此用戶此次創建的內存都會回收,包括配置用的字典。這與我們的設想相違背,我們的設想是,加載一次配置文件到字典中,以后每個用戶到來都直接使用此配置字典,而不用每次都去讀文件,但是php卻不能實現這一功能。?? ?后來查了很多網上的資料來解決這一問題,得知php無法常駐內存。(驚訝!驚訝!)
???????
??????? 我們希望的形式:
?????
?
??????? php的工作形式:
???????
問題描述:
?? ?用戶在每次訪問php的后臺時,所有的內存都必須新建,包括所有的類都必須重新實例化,所有的文件都必須重新讀取,所有的數組、字典都必須重新建立。這樣,php的網頁稍微做的大一些,怎么可能能反映的快?怎么可能能扛得住較多的用戶??? ?在網上搜“php的效率”時,看到了用php讀數據庫的實驗。個人覺得這樣的實驗對測php的效率沒有多大的意義。而且php與java的對比的最大區別不應該是什么php簡單(其實php也不簡單)應該是是否可以常駐內存(java的servlet在第一個用戶訪問時實例化,以后在來新的用戶訪問不會重新實例化)。
其他的考慮:
?? ?基于php無法常駐內存,php不應該作為大型web應用的后臺語言,只能作為后臺的輔助語言使用(如連接cgi)。
總結
以上是生活随笔為你收集整理的php web开发的不足之一:无法常驻内存的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安装微软原版WinXP方法教程
- 下一篇: 基于TP3.2框架开发的最新V2.1.0