PHP常驻进程编程需知 郭新华 PHPCON2019

随着Swoole这些PHP常驻进程的技术方案兴起,我们PHPer可以做越来越多的事情,比如高性能的微服务、物联网、IM、直播等等,但是传统的web开发和Swoole下的常驻进程模式开发是有很多区别的,本演讲将从内存、阻塞、性能分析等角度阐述传统PHPer需要提升的技术点以及一些常用的工具。

展开查看详情

1.PHP —

2.PHPCon PPT https://github.com/ThinkDevelopers/PHPConChina PPT PHPCon

3.PHP https://segmentfault.com/a/1190000012028295

4. PHP PHP is a popular general-purpose scripting language that is especially suited to web development.

5.PHP /C/C++ nginx java/c#/go service AI PHP or

6. PHPer 1. 2. 3. 4. 5.

7.1.

8.PHP vars tmps args str_repeat vars tmps args foo

9.1 2 3

10.PHP or opcache

11.PHP unset null

12. $var 0 refcount 0 • composer gc_disable() 10000 • gc • gc_disable()

13.FPM —php_request_shutdown array object string heap/stack zval function class_entry extensio PHP emalloc/efree* RSHUTDOWN=> php_request_shutdown zend MM emalloc*(ext efree gc_disable() ) operate system

14. php_request_shutdown 1.max_request (1) (base ) (2) (3) (4) (opcache,ext minits) 2. unset

15.• unset

16.

17.

18.—

19.—FPM swoole

20. 2. mysql PHP (e.g php7_warpper) :

21. —FPM FPM worker accept worker worker master prefork worker worker worker close

22. —Swoole swoole(base) accept worker worker worker master prefork worker reactor worker worker close

23.

24. strace -p 123456 lsof -p 123456 fd strace PHP

25.swoole/FPM ptrace

26.mysql

27.profile —Xhprof

28. profile profile PHP PHP

29.c profile —callgrind https://www.bo56.com