PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。

PHP是单线程的,那么php单线程的缺点是什么?

一直以来php就是个单进程的程序;虽然php的pthreads扩展早就有了。但是它不够稳定,运行运行着就会莫名其妙的自己挂掉;php的扩展都是C写的,这也就意味着任何一个扩展出现线程竞争资源控制问题都能让整个挂掉

PHP单线程的缺点

1)、函数命名不规范 驼峰法和下滑线,传参位置不一 你知道的

2)、单线程 ; PHP本身,一直以来php就是个单进程的程序;虽然php的pthreads扩展早就有了。但是它不够稳定,运行运行着就会莫名其妙的自己挂掉;php的扩展都是C写的,这也就意味着任何一个扩展出现线程竞争资源控制问题都能让整个挂掉

3)、核心异步网络不支持(当然在linux只有同步非阻塞网络模型)。却少了这个使得很难开发一个能够承受大并发的网络应用。传统的网络模型和io都阻塞的。这样基本的编程的做法就是一个进程(或者线程)响应一个用户链接请求。因此无法完成像实时网游那样需要成千上万网络连接的任务。尽管php也有Libevent、eio扩展对此算是某种程度上面的弥补,但是感觉都不是那么完善

4)、只支持web开发,不方便做 .exe文件,不方便做桌面应用程序. 不方便做手机程序.

5)、不适合做爬虫、自动运行脚本.科学运算项目,这语言基本构架就不适合,虽然有很多方法实现。

6)、后期维护困难。后期提速空间局限性较大。

7)、PHP的解释运行机制。这种运行机制使得每个PHP页面被解释执行后,所有的相关资源都会被回收。也就是说,PHP在语言级别上没有办法让某个对象常驻内存。

在PHP中,所有的变量都是页面级的,无论是全局变量,还是类的静态成员,都会在页面执行完毕后被清空。以JSP为例,在JSP中,Java Bean的scope有四种有效值:Page、Application、Session、Request,分别对应页面、程序、会话、请求四种生存期。但在PHP中,只有Page一种生存期。

更多PHP相关知识,请访问php中文网!

为什么说php单线程,php单线程的缺点是什么?相关推荐

  1. 单线程读单线程写一个变量是否一定要加锁

    单线程读单线程写一个变量是否需要加锁,刚毕业的时候我会有这样的想法:一个线程只读并没有改变变量的值并不会有两个线程同时写一个变量产生竞态,所以不用加锁,但是工作中长者给我指导都是多线程必须加锁,所以我 ...

  2. python是多线程还是单线程_Python单线程与多线程

    最近一直在学习爬虫的相关知识,目前学习到了单线程.多线程这一块,把自己的学习经历分享出来顺便也做个笔记. 一.单线程操作 单线程操作就是我们日常写代码时的操作,为了比较出和多线程的区别,以下为其对比. ...

  3. cpu多核 node 单线程_node单线程支撑高并发原理(node异步I/O)

    一.node单线程实现高并发原理 众所周知nodejs是单线程且支持高并发的脚本语言.可为什么单线程的nodejs可以支持高并发呢?很多人都不明白其原理,下面我来谈谈我的理解: 1. node的优点: ...

  4. redisserver是什么问题_面试官老是问:为什么采用单线程的Redis也会如此之快?...

    Java面试笔试面经.Java技术每天学习一点 公众号Java面试 关注我不迷路 作者:kaito 来源:http://kaito-kidd.com/2020/06/28/why-redis-so-f ...

  5. redis线程阻塞原因排插_每次面试都要被问:为什么采用单线程的Redis也会如此之快?...

    众所周知,Redis在内存库数据库领域非常地火热,它极高的性能和丰富的数据结构为我们的开发提供了极大的便利. 但我们也听说了,Redis是单线程的,为什么采用单线程的Redis也会如此之快呢?这篇文章 ...

  6. 对Redis单线程的一些看法

    1.先说说redis单线程的优点: 单线程的模型除了减少一些线程上下文切换之外并无其他优点,事实性其实单线程的redis指的只是说处理cmd的流程是单线程的,也就是只有epoll接收到cmd之后,继续 ...

  7. 多线程不能不知道的之单线程和多线程的比较

    早期的计算硬件十分复杂,但是操作系统执行的功能确十分的简单.那个时候的操作系统在任一时间点只能执行一个任务,也就是同一时间只能执行一个程序.多个任务的执行必须得轮流执行,在系统里面进行排队等候. 栗子 ...

  8. C#.多线程 (一)多线程(异步模式)与单线程(同步模式)的应用与区别 举例

    先看网上百度的几张图片: 什么是单线程?单线程工作模式也成为同步模式.其就是在一定状态下只能做一件事情,比如我在18:00-18:30时间段可以做饭. 什么是多线程?多线程工作模式也成为异步模式.其就 ...

  9. 6.Redis单线程为什么这么快?

    线程模型 大家都知道,Redis是单线程的,为什么采用单线程的Redis也会如此之快呢?接下来我们分析其中缘由. 严格来说, Redis Server是多线程的, 只是它的请求处理整个流程是单线程处理 ...

最新文章

  1. Velodyne VLP-16激光雷达数据分析
  2. pandas使用read_csv函数读取文件时指定数据列的数据类型、pandas使用read_csv函数读取文件时通过keep_default_na参数设置缺失值替换为空字符串
  3. mysql 5.6多实例_MySQL 5.6.x多实例配置
  4. 关于毕业租房的一些碎碎念。
  5. 阿里资深技术专家的10年感悟
  6. 查看未提交事务或sleep session最后执行的sql语句
  7. 刚过去不到一个月 QQ又更新了
  8. java数组转为字符串_join()和toString()方法 将数组转换为字符串
  9. python与r语言处理excel数据_【R语言】批量读取Excel数据并合并(升级版)
  10. linux 外接网卡驱动下载,绿联USB外置显卡+网卡驱动程序
  11. 阿里云iot平台实现MQTT通信(mqtt.fx接入iot平台及测试)
  12. sata AHCI驱动下载(AMD Intel Nvidia)
  13. 参加2010年磨房《在路上 - 十年》百公里徒步活动小记
  14. Python什么都能做(二)用Python画微信新出的表情包
  15. 计算机网络的发展过程大致可以分为几个,计算机网络发展过程分几个阶段
  16. 网络工程师/计算机网络知识如何入门,以及学习路线?
  17. ​英伟达 CEO 黄仁勋:摩尔定律结束了;苹果新专利:折叠式iPhone可自行修复折痕;Rust 1.64.0 发布|极客头条...
  18. COSCon'22@Beijing | 北京分会场等你赴约
  19. 计算机主机无法开机故障原因,惠普电脑开不了机怎么办 惠普电脑开不了机是什么原因 惠普电脑开机常见问题...
  20. 分享我四五月份面试阿里、字节跳动、携程、小红书、网易的面试经历,原来Java面试还是需要有技巧的。

热门文章

  1. java集合的功能_功能性Java集合
  2. Java 9和应用程序性能监视的激动人心之处
  3. 拖动滑块拼图背景图没显示_计划B? 那是计划N…没什么。 拼图于2015年问世
  4. lambda ::_Lambda项目:迈向多核及超越
  5. Java 8 Streams:过滤和谓词否定
  6. junit4 单元测试框架_超越JUnit –测试框架的替代方案
  7. 将jOOQ与JDBC比较
  8. 香辣弹簧:自动接线的不同方法
  9. Java EE 7 / JAX-RS 2.0 – REST上的CORS
  10. Java 8的新增功能(第I部分-JavaFX)