xxfpm

FastCGI进程管理器
授权协议 未知
开发语言 C/C++
所属分类 服务器软件、 FastCGI 服务器
软件类型 开源软件
地区 国产
投 递 者 尉迟彬
操作系统 Windows
开源组织
适用人群 未知
 软件概览

经测试,支持Win32和Linux-x86平台。对于用php的人,有了这个东西来维护一定数量的进程,就能制服经常崩溃退出的php-cgi啦!!!

Usage: xxfpm path [-n number] [-i ip] [-p port]
Manage FastCGI processes.

-n, --number number of processes to keep
-i, --ip ip address to bind
-p, --port port to bind, default is 8000
-u, --user start processes using specified linux user
-g, --group start processes using specified linux group
-r, --root change root direcotry for the processes
-h, --help output usage information and exit
-v, --version output version information and exit

第一个写得比较标准的终端应用程序,我是看了cygwin的里的一些源代码,然后学会了如何使用getopt,算是写得比较标准的,但是代码也不短。

使用例子:
xxfpm z:/php5/php-cgi.exe -n 5 -p 8080

有人问,如何给程序加入参数?这个不难,使用双引号即可,路径要用"/"而不用"\"。例如要指定php.ini的路径,可以用下面例子:
xxfpm "z:/php5/php-cgi.exe -c z:/php5/php.ini" -n 5 -i 127.0.0.1 -p 8080

 

如何维护进程:

Windows上使用CreateProcess创建进程,使用WaitForSingleObject等待进程结束;Linux上使用fork和 execl创建进程,使用waitpid等待进程结束。Linux的版本多了在创建子进程的时候可以设置进程限制,能够以受限用户方式来运行。

当进程管理器被关闭的时候,它所创建的所有子进程也必须被关闭。Windows上使用JobObject这个东西来把子进程与管理器的进程产生关 联,感谢iceboy提供的资料!Linux上通过捕捉关闭信号,然后给所有子进程发送SIGTERM来结束子进程。详见源代码!!!

  •   windows 下 php-cgi 进程处理一定数量的访问后,就会自动关闭,由于没办法直接让 php-cgi 进程支持更多的访问数量,所以只能启动多个进程来满足需求。 xxfpm 是一个可执行程序,它能同时启动多个 php-cgi 进程,并且在任何一个进程关闭时,都会重新启动一个新的进程,始终保持一定数量的进程,这样,就无需手动创建,省去了很多麻烦。 xxfpm 需要 pthreadGC2.d

  • 这次做了一个项目部署在环境为win2012+nginx1.13.5+mysql5.6+php7的环境下,服务器是阿里云的 由于之前没有这种经验,遇到了点坑(据参考文章里说的这坑还有些年份了),最开始自己是用Php-cgi解决的,但是不知道是服务器问题还是别的什么情况,运行cmd输入php-cgi.exe -b 127.0.0.1:9000不能关闭cmd,否则cgi就一起关掉了。这也忍了,但是自己访

  • 经测试,支持Win32和Linux-x86平台。对于用php的人,有了这个东西来维护一定数量的进程,就能制服经常崩溃退出的php-cgi啦!!! Usage: xxfpm path [-n number] [-i ip] [-p port] Manage FastCGI processes. -n, –number number of processes to keep -i, –ip ip ad

 相关资料
  • Warning: This information refers to third-party sites, products, or modules that are not maintained by the Expressjs team. Listing here does not constitute an endorsement or recommendation from the Ex

  • NodeJS可以感知和控制自身进程的运行环境和状态,也可以创建子进程并与其协同工作,这使得NodeJS可以把多个程序组合在一起共同完成某项工作,并在其中充当胶水和调度器的作用。本章除了介绍与之相关的NodeJS内置模块外,还会重点介绍典型的使用场景。 开门红 我们已经知道了NodeJS自带的fs模块比较基础,把一个目录里的所有文件和子目录都拷贝到另一个目录里需要写不少代码。另外我们也知道,终端下的

  • 如果项目依赖各种外界的进程,应使用 foreman 来管理它们。

  • 细节 进程一般分为批处理进程、交互进程和守护进程三类。 守护进程总是活跃,在系统启动时通过脚本自动启动,或由 root 启动,通常在后台运行。 一个进程可以拥有子进程。当父进程终止时,它的子进程也随之终止;而子进程终止时,父进程通常可以继续运行。 init 进程为根进程,所有进程都是它的子进程 ps 显示进程信息,选项可省略 “-” aux 以 BSD风格 显示进程 常用 -efH 以 Syste

  • PROCESS MANAGEMENT 在任何时间,Linux 系统通常同时运行数百个,甚至数千个进程。进程只是一个正在运行和使用资源的程序。它包括终端,Web 服务器,任何正在运行的命令,任何数据库,GUI 界面等等。任何优秀的 Linux 管理员(特别是黑客)都需要了解如何管理他们的流程以优化他们的系统。例如,一旦黑客控制了目标系统,他们可能想要找到并停止某个进程,如防病毒应用程序或防火墙。为此

  • ps 命令查看进程 ps 用来显示操作系统上的进程,包括进程 UID,PID,PPID,CPU 使用情况等。ps aux $ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.3 128176 6860 ? Ss 12:36

  • Important: StrongLoop Process Manager 不能在Windows系统上运行 Running StrongLoop PM(执行进程管理器) Running StrongLoop PM as a transient process(运行StrongLoop PM作为一个过渡过程) Connecting to Process Manager from Arc(从 Arc

  • 主要内容:反引号运算符,system() 函数,实例,fork() 函数,实例,实例,Kill 函数,实例Perl 中你可以以不同的方法来创建进程。 本教程将讨论一些进程的管理方法。 你可以使用特殊变量 $$ 或 $PROCESS_ID 来获取进程 ID。 %ENV 哈希存放了父进程,也就是shell中的环境变量,在Perl中可以修改这些变量。 exit() 通常用于退出子进程,主进程在子进程全部退出后再退出。 所有打开的句柄会在子程序中被 dup() 函数复制, 所有关闭进程所有句柄不会影响其