返回列表 回复 发帖

PHP写的一个简单的Daemon示例

  1. #!/usr/local/php_daemon/bin/php -q
  2. <?php
  3. /*
  4. FreeBSD系统监控程序 2009-12-31        Jacky
  5. 程序运行环境说明
  6. OS                :         FreeBSD / Linux
  7. PHP                :        php-5.x
  8. 编译参数:        --enable-cli --with-pcntl
  9. */
  10. //设置系统时区
  11. date_default_timezone_set("Asia/Chongqing");
  12. ini_set('include_path', ini_get('include_path').':..');

  13. //错误显示级别
  14. error_reporting(E_ALL);
  15. require_once "System/Daemon.php";

  16. //定义程序名/日志/PID名称
  17. System_Daemon::setOption("appName", "simple");

  18. //定义程序描述
  19. System_Daemon::setOption("appDescription", "This is a test appName!!");

  20. //定义程序路路
  21. //System_Daemon::setOption("appDir", "/usr/local/sbin");

  22. //定义程序运行的UID
  23. //System_Daemon::setOption("appRunAsUID", "1000");

  24. //定义程序运行的GID
  25. //System_Daemon::setOption("appRunAsGID", "1000");

  26. //定义程序pid路径
  27. //System_Daemon::setOption("appPidLocation", "/var/run/appName.pid");

  28. //定义程序最大执行时间
  29. System_Daemon::setOption("sysMaxExecutionTime", "0");

  30. //定义程序最大输入时间
  31. System_Daemon::setOption("sysMaxInputTime", "0");

  32. //定义程序使用最大内存值
  33. System_Daemon::setOption("sysMemoryLimit", "10M");

  34. //Daemon启动
  35. System_Daemon::start();

  36. //执行的操作
  37. while(true) {
  38.    sleep(1); //休眠一秒,防止CPU占用过高
  39.    if (mt_rand(0,10) == 1) {
  40.       // simulate a random event which requires handling
  41. //       System_Daemon::log(System_Daemon::LOG_INFO, "Doing something interesting...");
  42.         System_Daemon::log(System_Daemon::LOG_INFO, "Daemon not yet started so ".
  43.     "this will be written on-screen2323");
  44.    }
  45. }
  46. System_Daemon::stop();
  47. ?>
复制代码
Postfix技术专业支持论坛
http://www.thismail.org/bbs
-----------------------------------
提供专业postfix技术支持,邮件系统开发定制
QQ:187159779 注明(Postfix技术支持)
返回列表
开源邮件服务器 开源邮件服务器 web 开源邮件 开源 mail 开源 邮件服务器 邮件技术 mail技术 反垃圾邮件 反垃圾mail mail投递
邮件服务器 mail服务器 开源软件 mail软件 mail服务新品牌 开源邮件服务新品牌
开源mail服务新网站 邮件服务新品牌 mail tmail mailserver 163邮件 sendmail |Linux维护|Linux代维|成都Linux维护|成都Linux代维