新手之见,若有那里说错请高手指点。

一个网站的后台若是纯用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开发的不足之一:无法常驻内存相关推荐

  1. IMI 基于 Swoole 开发的协程 PHP 开发框架 常驻内存、协程异步非阻塞

    介绍 IMI 是基于 Swoole 开发的协程 PHP 开发框架,拥有常驻内存.协程异步非阻塞IO等优点. IMI 框架文档丰富,上手容易,致力于让开发者跟使用传统 MVC 框架一样顺手. IMI 框 ...

  2. 开发db文件_Swoole高效跟传统的web开发有什么区别?life

    一.swoole的运行模式 Swoole高效跟传统的web开发有什么区别,除了传统的LAMP/LNMP同步开发模式,swoole的异步开发模式是怎么样的. 我的官方群点击此处.获取更多的swoole学 ...

  3. java web开发学习总结

    java web 开发基础内容理解 解决中文乱码问题 请求参数乱码 输出乱码 jsp的运行原理 GET请求和POST请求的区别 静态包含和动态包含 静态包含 动态包含 两者的区别 Cookie和Ses ...

  4. Web开发技术的演变

    原文出处: WildFly   欢迎分享原创到伯乐头条 受到好文<Web开发的发展史>(英文)激发的灵感,写下我对web开发技术的认识. 1. 静态页面时代 大学时候,上机还得换卡穿拖鞋, ...

  5. 前端笔记(Html+CSS+JS+DOM+网页特效+jQuery+HTML5+CSS3+canvas 标签+web开发重难点+面向对象+AJAX)

    第1章Html Html:超级文本标记语言(HyperText Markup Language),在浏览器上运行的一种标记语言. 就是给文本加上含有语义的标签. 接下来应该学习更多具体语义标签: 一. ...

  6. 崔尚森《web开发技术》复习提纲

    <web开发技术>复习 代课老师:朱依水 参考文献:崔尚森.张白一.张辰<web应用开发技术:JSP>,Robert W. Sebesta<Web程序设计>第七版, ...

  7. C++后台实践:古老的CGI与Web开发

    C++后台实践:古老的CGI与Web开发 本文写给C/C++程序猿,也适合其他对历史感兴趣的程序猿 ============================================= 谈到we ...

  8. Web开发的发展史---Web开发技术的演变

    在接下来的几个月时间里,我打算写一系列关于完整web开发的文章.这第一篇文章虽然有所粗略,但也能够充分概括了在之前15年或者更久的时间里web应用程序如何进行演变.并且最后我会囊括下这段时间内所写的相 ...

  9. 写给自己的web开发资源

    web开发给我的感觉就是乱七八糟,而且要学习感觉总是会有东西要学习,很乱很杂我也没空搞,(其实学习这个的方法就是去用它,什么你直接用?学过js么学过jquery么?哈哈,我没有系统的看完过,但是也做出 ...

最新文章

  1. python 过滤出某后缀名文件
  2. 修改表主键字段数据类型(V2.0)
  3. 格式化字符串漏洞利用 七、工具
  4. linux 开机自动运行命令_如何在Linux终端同时运行多个Linux命令
  5. 2018年面试准备汇总
  6. 企业运维经典面试题汇总(3)
  7. SLAM基础_从零开始一起学习SLAM | 为啥需要李群与李代数?
  8. 单商户商城系统功能拆解12—商品管理
  9. 什么是计算机在自动控制中的应用,计算机在自动控制中的应用
  10. IP地址被屏蔽怎么解决
  11. raw格式转换jpg软件 V5.2
  12. Vector、Sort课后题解
  13. 【渝粤题库】陕西师范大学202521中国古代文学(三) 作业(高起专)
  14. 程序员实用工具网站(原文有图片,本篇只是简单记录)
  15. 大学四年如何规划之出国留学
  16. 2021-5-11【头歌】【歌手评分系统】
  17. 如何用HTML写一个旋转万花筒
  18. 显示屏播放服务器S3的前身,道可视S3+高端音乐车机略胜一筹
  19. 敏捷开发中的sprint是什么意思_百度知道
  20. 王者荣耀体验服服务器未响应9月16,王者荣耀体验服9月16日更新维护及英雄调整详解介绍...

热门文章

  1. 钗头凤---陆游唐婉
  2. 使用jPlayer实现带广告功能和试听试看功能的MP4/MP3播放
  3. jsp mysql百度云_jsp33197网盘云盘网络硬盘ssh +mysql
  4. 奉劝那些刚参加工作的学弟学妹们:这20个高质量的学习网站越早知道越好(建议收藏)!!
  5. JS编程输出我国古代数学家张丘建在《张丘建算经》一书中提出了“百只鸡问题”。这个问题大概的意思是这样子的:公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,如果用100文钱买100只鸡,那么公鸡、母鸡和
  6. Scala崛起带来招聘爆发
  7. python 方差分解_干货 :教你用Python来计算偏差-方差权衡
  8. 第三集 怪物学院 第十九章
  9. curl与tcpdump命令
  10. 美团、锤子科技 众多品牌从这里走出