代码改变世界

随笔分类 -  PHP进程

php-fpm.conf配置文件中文说明详解及重要参数说明

2020-07-17 14:07 by 天心PHP, 777 阅读, 收藏, 编辑
摘要: php-fpm工作流程 php-fpm全名是PHP FastCGI进程管理器 php-fpm启动后会先读php.ini,然后再读相应的conf配置文件,conf配置可以覆盖php.ini的配置。 启动php-fpm之后,会创建一个master进程,监听9000端口(可配置),master进程又会根据 阅读全文

PHP并发IO编程之路

2020-07-17 02:07 by 天心PHP, 202 阅读, 收藏, 编辑
摘要: 并发 IO 问题一直是服务器端编程中的技术难题,从最早的同步阻塞直接 Fork 进程,到 Worker 进程池/线程池,到现在的异步IO、协程。PHP 程序员因为有强大的 LAMP 框架,对这类底层方面的知识知之甚少,本文目的就是详细介绍 PHP 进行并发 IO 编程的各种尝试,最后再介绍 Swoo 阅读全文

一次读懂 Select、Poll、Epoll IO复用技术

2020-07-17 01:39 by 天心PHP, 753 阅读, 收藏, 编辑
摘要: 我们之前采用的多进程方式实现的服务器端,一次创建多个工作子进程来给客户端提供服务。其实这种方式是存在问题的。 可以打个比方:如果我们先前创建的几个进程承载不了目前快速发展的业务的话,是不是还得增加进程数?我们都知道系统创建进程是需要消耗大量资源的,所以这样就会导致系统资源不足的情况。 那么有没有一种 阅读全文

通俗讲解 异步,非阻塞和 IO 复用

2020-07-16 21:52 by 天心PHP, 231 阅读, 收藏, 编辑
摘要: 通俗讲解 异步,非阻塞和 IO 复用 1. 阅前热身为了更加形象的说明同步异步、阻塞非阻塞,我们以小明去买奶茶为例。 1.1 同步与异步同步与异步的理解同步与异步的重点在消息通知的方式上,也就是调用结果通知的方式。同步: 当一个同步调用发出去后,调用者要一直等待调用结果的通知后,才能进行后续的执行。 阅读全文

TCP和UDP的区别(Socket)

2020-07-16 19:20 by 天心PHP, 220 阅读, 收藏, 编辑
摘要: TCP和UDP的区别(Socket) TCP和UDP区别 TCP和UDP编程区别 TCP编程的服务器端一般步骤是: 1、创建一个socket,用函数socket(); 2、设置socket属性,用函数setsockopt(); * 可选 3、绑定IP地址、端口等信息到socket上,用函数bind( 阅读全文

PHP进程通信 UNIX Socket

2020-07-16 18:35 by 天心PHP, 942 阅读, 收藏, 编辑
摘要: AF_UNIX所代表的UNIX本地socket方式。当然了人家是先有socket后有这种UNIX Socket,这玩意也是后来满满发展来的,你可以理解为一开始socket是面向跨机器的网络通信,后来发现这玩意纯用在本地搞搞单机版跨进程通信效果也贼不错,而且这种本地版本的socket跑在127.0.0 阅读全文

php-fpm解读-进程管理的三种模式 及 worker进程、master进程详解

2020-07-12 18:12 by 天心PHP, 1928 阅读, 收藏, 编辑
摘要: php-fpm 和 单例设计模式 都是短连接 php-fpm进程管理一共有三种模式:ondemand、static、dynamic,我们可以在同一个fpm的master配置三种模式,看下图1。php-fpm的工作模式和nginx类似,都是一个master,多个worker模型。每个worker都在a 阅读全文

CGI、FastCGI和php-fpm概念和区别

2020-07-12 17:57 by 天心PHP, 515 阅读, 收藏, 编辑
摘要: CGICGI(Common Gateway Interface),公共网关接口,它是Web服务器与外部应用程序(CGI程序)之间传递信息的接口标准。如请求/index.html,那么web server会去指定目录下找到这个文件(如果存在的话)发送给浏览器,这里分发的是静态数据。那么,请求的是/in 阅读全文

什么是PHP7中的孤儿进程与僵尸进程,加上守护进程

2020-07-12 01:14 by 天心PHP, 192 阅读, 收藏, 编辑
摘要: 基本概念 僵尸进程:一个子进程在其父进程还没有调用wait()或waitpid()的情况下退出。这个子进程就是僵尸进程。任何一个子进程(init除外)在exit()之后,并非马上就消失掉,而是留下一个称为僵尸进程(Zombie)的数据结构,等待父进程处理。这是每个 子进程在结束时都要经过的阶段。如果 阅读全文

PHP 信号管理知识整理汇总

2020-07-11 23:00 by 天心PHP, 135 阅读, 收藏, 编辑
摘要: SIGQUIT 建立CORE文件终止进程,并且生成core文件SIGILL 建立CORE文件 非法指令SIGTRAP 建立CORE文件 跟踪自陷SIGBUS 建立CORE文件 总线错误SIGSEGV 建立CORE文件 段非法错误SIGFPE 建立CORE文件 浮点异常SIGIOT 建立CORE文件 阅读全文

PHP多进程---fork多个子进程,父进程阻塞与非阻塞

2020-07-11 19:22 by 天心PHP, 695 阅读, 收藏, 编辑
摘要: PHP的多进程是不是可以无限制的fork子进程?fork调用的一个奇妙之处就是它仅仅被调用一次,却能够返回两次,它可能有三种不同的返回值: 在父进程中,fork返回新创建子进程的进程ID在子进程中,fork返回0如果出现错误,fork返回一个负值在fork函数执行完毕后,如果创建新进程成功,则出现两 阅读全文

linux进程-线程-协程上下文环境的切换与实现

2020-07-04 08:13 by 天心PHP, 928 阅读, 收藏, 编辑
摘要: 一:进程-线程-协程简介 进程和线程的主要区别是:进程独享地址空间和资源,线程则共享地址空间和资源,多线程就是多栈。 1、进程 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。每个进程都有自己的独立内存空间,不同进程通过进程间通信来通信。由于 阅读全文

进程之间究竟有哪些通信方式

2020-07-04 07:46 by 天心PHP, 615 阅读, 收藏, 编辑
摘要: 需要特殊指出的是消息队列、信号量和共享内存这三种IPC同属于XSI IPC(XSI可以认为是POSIX标准的超集,简单粗暴理解为C++之于C)。这三种IPC在*NIX中一般都有两个“名字”来为其命名,一个叫做标志符,一个叫做键(key)。标志符是一个非负整数,每当一个IPC结构被创建然后又被销毁后, 阅读全文
点击右上角即可分享
微信分享提示