开多少个FCGI进程才合适

如何使Nginx支持FastCGI(C/C++) (支持调用多个FastCGI程序) 本文解决如何使Nginx服务器通过Fastcgi接口支持外部fcgi程序,并且阐述如何让Nginx可以调用多个不同的外部fcgi程序去工作。 阅读详情

    现在网站很多都用FCGI布署到WEB SERVER上提供服务,但同一个服务的FCGI开多少个进程才合适呢?

 

    下面举个例子,比如一个网站进首页的FCGI,hpage.fcg,假设这个FCGI对每次请求,正常的处理时延是100ms,最长处理时延是1s而每秒中单机的请求量是200次,而用户打开首页感觉最好的情况是0.5s,而最大忍耐时间是3s。

    那么一个进程正常情况0.5秒可以处理5个请求,那么200/5=40个进程的话用户感觉会最爽,而最长处理时延情况下3秒可以处理3个进程,所以最差情况下200/3=66个进程可以保证用户正常返回。所以进程数在40-66之间就基本OK了。

 

    Tnormal=100ms Texp=1000ms ReqPerSec=200 Tbest=500ms Tworst=3000ms

 

    ReqPerSec(Tbest/Tnormal)=40

 

    ReqPerSec(Tworst/Texp)=66

 

    上面的算法是我自己的总结,大家有新的算法欢迎一起探讨。

spawn-fcgi绑定端口,绑定进程结束后子进程不结束会继承父进程端口 这些天遇到了一个端口继承的问题,使用spawn-fcgi将程序和端口绑定,程序中开一个子进程,kill掉父进程,子进程会继承父进程的端口。 图中是一个简单的demo,该进程绑定了6666端口,并且通过subprocess启动了一个while.py进程,while进程只有一个while(1)循环,确保进程不结束。 可以看到6... 阅读详情

相关推荐

FastCGI与spawn-fcgi安装与配置

文章目录编译安装spawn-fcgi编译和安装spawn-fcgi相关命令:如果遇到以下错误:spawn-fcgi参数信息:编译安装fcgi编译和安装fcgi相关命令:测试检查是否成功测试程序源代码需进行的有关Nginx的fcgi的配置报错处理:spawn-fcgi:child exited with: 127 编译安装spawn-fcgi spawn-fcgi源码包下载地址:http://redmine.lighttpd.net/projects/spawn-fcgi/wiki 编译和安装spawn-fc

流楚丶格念的博客 6201

cgi web 调用多次启动_CentOS Linux 7 配置 nginx 支持 CGI

Nginx 本身不能执行外部程序,Nginx 处理 PHP 是通过 PHP 的 fastcgi 管理器(php-fpm)进行处理,然后 nginx 再将结果返回给用户;所以如果我们需要通过 cgi 程序(shell、perl、c/c++ 等)来编写网站后台的话,就需要使用 fcgiwrap 这个通用的 fastcgi 进程管理器来帮助 nginx 处理 cgi。对于 PHP:只建议使用 PHP-F...

weixin_39946996的博客 378

Nginx+fcgi+spawn-fcgi+fcgiwrap+ffmpeg实现视频截图

1、centos7源码安装nginx此处不支持使用yum安装,因为yum安装出来的文件路径和源码不一致,这会在后面的操作中很麻烦,所以这里推荐源码安装。具体源码安装参考链接:centos源码安装nginx安装完nginx之后,常用的nginx的管理命令:#查询nginx进程 ps aux|grep nginx #关闭所有nginx(没有killall命令的话运行yum install psmisc...

hust_cxl的博客 1700

限制php-cgi进程数量,php-fcgi进程数超过预设值问题的解决

现象:某日和开发的同事调试服务器php状态时候发现下面这种情况:ps aux |grep php-fcgi |wc -l602表面上看是没什么问题,可是我明明记得 php-fcgi我只开了300个啊!难道有人改过了?立刻查看 php-fpm.conf 找到这一项300确实是300个啊~~,怎么会有600个?ps aux |grep php-fcgi |morewww 11707 0.0...

weixin_42504619的博客 744

FCGI程序 代码格式(C++)

以下是GET,POST两种参数传递方式所对应的fcgi程序格式,代码从简,力求清晰。(两种传参方式详情见 利用JS函数调用fcgi)注:1.得到想要的东西后利用printf()函数,返回给前台。2.fcgi程序编译时加 -lfcgi选项Ps:我机器装的是比较新的fcgi和fcgi_mod版本,可以用cout代替printf返回内容。不知是其中哪个的功能。移植到目标服务器上时也需

Run2Death的专栏 3836

告别License烦恼:手把手教你用VS Code+Cppcheck搭建免费的MISRA-C代码检查环境

本文详细介绍了如何使用VS Code和开源工具Cppcheck搭建免费的MISRA-C代码检查环境,帮助开发者规避商业工具的高额License费用。通过四步环境搭建和实战技巧,实现高效的代码静态检查,提升嵌入式开发的安全性和可靠性。

weixin_42523326的博客 248

php cgi源码,PHP FPM源代码反刍品味之三: 多进程模型

本文开始会涉及写源代码, FPM源代码目录位于PHP源代码目录下的sapi/fpmFPM多进程轮廓:FPM大致的多进程模型就是:一个master进程,多个worker进程.master进程负责管理调度,worker进程负责处理客户端(nginx)的请求.master负责创建并监听(listen)网络连接,worker负责接受(accept)网络连接.对于一个工作池,只有一个监听socket, 多个...

weixin_35456296的博客 260

eMMC数据擦除的方式

接下来主要是讲解erase、trim、discard的差异,涉及的command有CMD35、CMD36、CMD38。一般用来擦除整卡或者某些分区,如果只想擦除一个。以下是device status的部分解释。eMMC的数据擦除方式有6种,分别是。将会跳过写保护,只执行其他的范围。Discard的命令序列是。Erase的命令序列是。的范围有包含写保护,Trim的命令序列是。

DPJimmy的博客 1772

spwan-fcgi和fcgi 关系

spwan-fcgi: 举个例子: spawn-fcgi -a 127.0.0.1 -p 10000 -f ./login spwan-fcgi.c: main 函数 会执行参数解析过程 获得 ip 端口 和 执行文件的路径。 bind_socket 函数会执行 sockt 的 绑定监听过程, 函数 fcgi_spawn_connection 会通过系统调用dup2将 listen的 socket 重定向到FCGI_LISTENSOCK_FILENO,并关闭原来的listen socket. 然后

qq569262545的博客 961

机器学习系列(1)_逻辑回归初步

1、总述 逻辑回归是应用非常广泛的一个分类机器学习算法,它将数据拟合到一个logit函数(或者叫做logistic函数)中,从而能够完成对事件发生的概率进行预测。 2、由来     要说逻辑回归,我们得追溯到线性回归,想必大家对线性回归都有一定的了解,即对于多维空间中存在的样本点,我们用特征的线性组合去拟合空间中点的分布和轨迹。如下图所示:     线性回归能对连续值结果进行预测,

寒小阳 13万+

无网络环境部署:手动获取并安装OneNote for Windows 10完整指南

本文提供了一份详尽的OneNote for Windows 10离线安装指南。针对无网络或内网隔离环境,详细介绍了如何从官方渠道获取正确的产品ID,利用第三方工具下载纯净的.appxbundle安装包,并解决系统兼容性与依赖框架问题。最后,通过PowerShell管理员命令完成安全部署,是IT管理员和高级用户在离线环境下部署UWP应用的实用参考。

loss4bartender的博客 496

spawn-fcgi与fcgi

FCGI_Accept这个函数会基于FCGI_LISTENSOCK_FILENO监听套接字文件描述辅助进行accept,接着将accept到的连接设置到fcgi的输入输出文件描述符变量上,最后主流程就基于这个连接套接字进行与nginx服务器的socket数据通信。注意这里有个宏:FCGI_LISTENSOCK_FILENO,这个宏就是fcgi中监听套接字的文件描述符;函数创建监听套接字;

lswdcyy的博客 1107

Unity插件NodeCanvas之行为树的详细教程

NodeCanvas 是一个用于 Unity 的可视化脚本工具,主要用于游戏开发中的行为树、状态机和流程图的设计。它通过节点编辑器的方式,让开发者可以更直观地创建和管理游戏逻辑,减少了传统编码的复杂性。今天我们就来详细介绍一下NodeCanvas插件。

TxNet 1959

spawn-fcgi 进程数

今天下了spawn-fcgi的源码,花了点时间,终于明白线上2400个php-cgi的由来了,给大家分享下。 常用的lighttpd+fastcgi的配置有以下几个关键参数:(我们线上在/home/work/local/lighttpd/bin/fastcgi_control里都有对应,下面这个可能更容易理解) [code="java"]fastcgi.server = ( ".php" ...

coolest blog 425

PCL 计算点云的体积密度(C++详细过程版)

本文提出了一种基于点云体积密度的计算与可视化方法。算法通过KdTree搜索每个点的邻域,利用球体积公式计算单位体积内的点数作为密度值,并存储在点云强度属性中。代码实现了点云读取、密度计算和可视化功能,使用PCL库完成邻域搜索和密度渲染。结果显示,该方法能有效反映点云密度分布,为后续点云处理提供密度特征参考。文章附有完整C++代码实现和可视化效果图,适用于点云密度分析和特征提取应用。

点云侠的博客 308

国科大学习资料--矩阵论(叶世伟)-期末考试题整理3

国科大学习资料–矩阵论-期末考试题整理3 国科大学习资料–矩阵论-期末考试题整理3 国科大学习资料–矩阵论-期末考试题整理3

无名何许人的博客 1404

spawn-fcgi 代码介绍

spawn-fcgi是一个小程序,作用是管理fast-cgi进程,功能和php-fpm类似,简单小巧,原先是属于lighttpd的一部分,后来由于使用比较广泛,所以就迁移出来作为独立项目了,本文介绍的是这个版本“spawn-fcgi-1.6.3”。不过从发布新版本到目前已经4年了,代码一直没有变动,需求少,基本满足了。另外php有php-fpm后,码农们再也不担心跑不起FCGI了。 很久之前

tycoon的专栏 1621

[QMT量化交易小白入门]-二十四、年化收益47%的全球核心资产轮动策略(含代码解析)

m_days = 25 #动量参考天数period=200m_days被设置为25,表示动量参考的天数为25天;period被设置为200,用于指定获取市场数据的周期长度。

木头大左的博客 2969

fastcgi 更改环境变量environ引起的段错误(四)gdb调试fcgi进程

fastcgi在收到HTTP服务器(例如 nginx)新请求后,FCGI_Accept为全局变量stdin、stdout、stderr和environ 赋新值,即改变存放环境变量的全局变量 char **environ ,如果进程的线程使用 C库函数getenv()读取环境变量全局变量 char **environ会引起段错误。

vitalma的博客 1160

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

基于FCGI的web后端服务程序设计

本文介绍了基于FCGI协议的Web后端服务程序设计,包括FCGI初始化、守护进程实现和服务管理三个关键部分。FCGI初始化涉及套接字创建、线程池建立和请求处理循环;守护进程通过两次fork、会话创建和文件描述符处理实现后台运行;服务管理包含命令行参数解析和PID文件机制,支持守护模式启动和服务停止功能。该项目实现了高效、稳定的Web后端服务框架,适用于需要常驻内存处理HTTP请求的应用场景。

prtem的博客 859

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

spawn-fcgi原理及源码分析

spawn-fcgi是一个小程序,作用是管理fast-cgi进程,功能和php-fpm类似,简单小巧,原先是属于lighttpd的一部分,后来由于使用比较广泛,所以就迁移出来作为独立项目了,本文介绍的是这个版本“spawn-fcgi-1.6.3”。不过从发布新版本到目前已经4年了,代码一直没有变动,需求少,基本满足了。另外php有php-fpm后,码农们再也不担心跑不起FCGI了。 很久之前

nyist327的专栏 5695

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Nginx运行FastCGI程序(ngx_http_fastcgi_module模块、fcgi库、spwan-fcgi进程管理器)

待续

董哥的黑板报 3467

fastCGI和spawn-fcgi 安装部署

通用网关接口(Common Gateway Interface、CGI)描述了客户端和服务器程序之间传输数据的一种标准,可以让一个客户端,从网页浏览器向执行在网络服务器上的程序请求数据。CGI独立于任何语言的,CGI 程序可以用任何脚本语言或者是完全独立编程语言实现,只要这个语言可以在这个系统上运行。Unix shell script、Python、Ruby、PHP、 perl、Tcl、 C/C++和 Visual Basic 都可以用来编写 CGI 程序。快速通用网关接口。

wuyou的博客 779

详解nginx+spawn-fcgi+demo+fcgi库函数

nginx+spawn-fcgi+demo+fcgi库函数 2016-08-03 22:53 由于项目中用到了nginx+FastCGI相关内容,所以这段时间学习了一下,顺便记下相关内容。 我是在远程工作机上实验的,有个缺点就是没有root权限,所以有些步骤我就没做了,比如make install(nginx)、添加到服务管理列表等等,仅在make之后二进

qq_22513751的博客 873

Spawn-FCGI安装

Spawn-FCGI安装 获取spawn-fcgi编译安装包, 在 http://redmine.lighttpd.net/projects/spawn-fcgi/wiki 上可 以获取当 前最新的版本。 tar -zxvf spawn-fcgi-x.x.x.tar.gz cd spawn-fcgi-x.x.x.tar.gz ./configure。 make sudo

qq_22513751的博客 628
上一篇: 如何评估服务器的单机处理能力
下一篇: SQL大全-好文收藏
nellson
博客等级 码龄20年 48粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值