录制 流量 说明 rdebug/recorder.md at master · didi/rdebug

录制流量=============================================一、思路注入 so 到 phpfpm,异步录制流量并存储,尽可能的减少对程序执行时间的影响。注入 so 的方式,在 macOS 系统下通过 `DYLD_INSERT_LIBRARIES`,Linux 系统下通过 `LD_PRELOAD` 来实现。简单示例:``` macOS...
阅读全文

Linux lsof 调试 PHP - weixin_33935777的博客 - CSDN博客

1 简介 lsof(list open files) 是一个列出当前系统打开文件的工具。 在 linux 环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互...
阅读全文

php-fpm进程数管理 - sfornt - 博客园

`PHPFPM`先来了解一些名词概念:`CGI`是`Common Gateway Interface(通用网管协议)`,用于让交互程序和Web服务器通信的协议。它负责处理URL的请求,启动一个进程,将客户端发送的数据作为输入,由Web服务器收集程序的输出并加上合适的头部,再发送回客户端。`FastCGI`是基于`CGI`的增强版本的协议,不同于创建新的进程来服务请求,使用持续的进程和...
阅读全文

php-fpm.conf配置文件中文说明详解及重要参数说明 - 泥土里的绽放 - 博客园

摘自:https://www.jb51.net/article/148550.htm 感谢分享 phpfpm工作流程phpfpm全名是PHP FastCGI进程管理器phpfpm启动后会先读php.ini,然后再读相应的conf配置文件,conf配置可以覆盖php.ini的配置。启动phpfpm之后,会创建一个master进程,监听9000端口(可配置),master进程又会根据f...
阅读全文

与 php fpm 配合原理 · didi/rdebug Wiki

phpfpm 有三个特点 父子进程:多个子进程争抢对同一个fd的accept,实现负载均衡 php 自身是完全串行的,如果写日志过多,就会拖慢业务代码 php 进程是短进程,不会长期驻留。生产环境的配置是每一万个请求就重启进程。对应的解决办法是 golang 写的 so 只在子进程里加载。避免因为 fork 引起的问题。先把 c 写的 so 注入到父进程,在子进程 ...
阅读全文

Supervisor的作用与配置 - 简书

===================================================supervisor管理进程,是通过fork/exec的方式将这些被管理的进程当作supervisor的子进程来启动,所以我们只需要将要管理进程的可执行文件的路径添加到supervisor的配置文件中就好了。此时被管理进程被视为supervisor的子进程,若该子进程异常中断,则父进程可以准...
阅读全文

Centos安装PHP7及配置php-fpm开机启动 - 打杂人 自述 - CSDN博客

centos 7 编译安装 php7.2.11的步骤 在官网下载php7.2.11的php压缩包,centos 7 安装 php7.2.11的步骤,```cd /usr/local/srcwget c http://cn2.php.net/distributions/php7.2.11.tar.gz``` 下载好后解压 php7.2.11.tar.gz 压缩包,并进入解压后的目...
阅读全文

Linux中profile、bashrc、bash_profile之间的区别和联系 - 陈冲的博客 - CSDN博客

/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置.英文描述为:\ /etc/profile\ System wide environment and startup programs, for login setup \ Functions and aliases g...
阅读全文

宜人贷蜂巢API网关技术解密之Netty使用实践 - 宜信技术学院的个人空间 - OSCHINA

一、背景宜人贷蜂巢团队,由Michael创立于2013年,通过使用互联网科技手段助力金融生态和谐健康发展。自成立起一直致力于多维度数据闭环平台建设。目前团队规模超过百人,涵盖征信、电商、金融、社交、五险一金和保险等用户授信数据的抓取解析业务,辅以先进的数据分析、挖掘和机器学习等技术对用户信用级别、欺诈风险进行预测评定,全面对外输出金融反欺诈、社交图谱、自动化模型定制等服务或产品。目前...
阅读全文

死磕 java同步系列之ReentrantLock源码解析(二)——条件锁 - 彤哥读源码的个人空间 - OSCHINA

问题(1)条件锁是什么?(2)条件锁适用于什么场景?(3)条件锁的await()是在其它线程signal()的时候唤醒的吗?简介条件锁,是指在获取锁之后发现当前业务场景自己无法处理,而需要等待某个条件的出现才可以继续处理时使用的一种锁。比如,在阻塞队列中,当队列中没有元素的时候是无法弹出一个元素的,这时候就需要阻塞在条件notEmpty上,等待其它线程往里面放入一个...
阅读全文