首页   注册   登录
 jsjscool 最近的时间轴更新

jsjscool

  •   Tencent
    V2EX 第 37106 号会员,加入于 2013-04-06 15:12:43 +08:00
    今日活跃度排名 12958
    要过年了,自荐一个 PHP 性能监控工具
  •  3   
    PHP  •  jsjscool  •  237 天前  •  最后回复来自 xiaoxiaoan317
    18
    极客导航-如何做个好的网址导航?
    分享创造  •  jsjscool  •  2014-07-06 23:21:22 PM  •  最后回复来自 taogogo
    20
    只是想用 gg 搜索的话,看这里
  •  2   
    问与答  •  jsjscool  •  2014-07-01 18:25:42 PM  •  最后回复来自 BOOM
    12
    jsjscool 最近回复了
    @CODEWEA 我这里描述有误 ,从扫描文件到执行在多文件下是串行的不是并行。
    先说答案,会有影响,但是发生的概率极低。

    简单理解 PHP 的执行流程是这样的:

    1. 扫描所有 PHP 文件,并转换成 Token (语言片段)
    2. 解析编译 Token 得到 Opocdes
    3. 执行 Opocdes

    第一步扫描所有 PHP 文件时会将 include,require 等的代码一起加到内存,速度非常快,如果此时更新代码是有可能影响当前请求的。

    如果请求进入到 1 之后的阶段,更新代码是不会对正在进行的请求有影响,因为用户的请求是独立的进程,独立的内存空间,内存里面的代码是请求到达 php-fpm 进程时那一刻的快照。

    如何避免:
    现在发布 PHP 代码都用 CI,CI 的实现方式不是 update 代码,而是每次创建一个新文件夹,全量拷贝代码,再修改软链接。如果使用类似方式发布代码的话就如你老大所说,不会影响用户请求。
    40 天前
    回复了 xiaoming1992 创建的主题 程序员 你平时空余时间都做什么来提高自己?
    写博客,写公众号,能提升自己的理论基础。
    42 天前
    回复了 zjsxwc 创建的主题 程序员 Web 开发真的还需要框架吗?
    按照这种说法就不该有软件工程这门专业,更不应该有设计模式这种理论。编程编累了可以看一下软件工程的历史,为什么会出现。
    42 天前
    回复了 liangxunli 创建的主题 PHP PHP 高并发处理
    上 swoole 的成本最低
    52 天前
    回复了 akjarjash 创建的主题 PHP PyQt5 和 PHP
    @Varobjs 关键字 yii2 timeZone 一大把文档……
    71 天前
    回复了 chaleaochexist 创建的主题 程序员 日志的粒度请教?
    第三方的接口调用要打,服务的输入输出要打,其他的能不打就不打。写日志是帮助自己用最少的字符得到最有用的结论。
    78 天前
    回复了 onice 创建的主题 程序员 打算逃离大城市了
    我毕业后也是在成都工作两年,因为工资太低选择了去北京。

    刚到北京找不到工作,最后因为缘分进入阿里(面试其实就看缘分),所以特别感恩马云爸爸。

    在北京阿里工作三年,挣到了之前想都不敢想的 Money,然后回成都买车买房结婚,并且进了成都腾讯(再次感谢阿里光环)。

    现在离开了腾讯,想过过朝九晚六的生活。平时我也有也博客的习惯,https://blog.it2048.cn/about/ 有兴趣的话从 2014 年的开始翻吧,谁没中二过呢。
    // 他提议的
    Redis::pipeline();

    可能比你的方案要好些。

    一是封装之后更容易扩展,比如连接之后打个日志,他只改一行,你可能要改一天。
    二是 ActiveRecord 的设计哲学就是深度封装,能封装的都封装起,让上层知道的越少越好,你甚至都不需要知道用的 Redis 还是 MySQL,connection()就更不需要知道(只是猜测你们用了 ActiveRecord )。

    至于性能,性能瓶颈真的是可遇不可求,遇到了至少可以吹 5 年。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4085 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 13ms · UTC 08:25 · PVG 16:25 · LAX 01:25 · JFK 04:25
    ♥ Do have faith in what you're doing.