首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用perl编写守护进程

用perl编写守护进程
EN

Stack Overflow用户
提问于 2011-02-11 17:22:31
回答 3查看 1.1K关注 0票数 1

我正在用Perl为时事通讯编写一个守护进程。

守护进程将在服务器上24/7运行。它几乎一直都有一个与postgresql数据库的活动连接。

我对Perl没有那么多的经验,所以如果你们中的一些人能够分享有关以下内容的信息,我会很高兴:

  1. 如何限制内存。我不想离开拉姆。正如我说过的,这个程序将一直作为守护进程运行而不被停止。
  2. 在编写这样的守护进程时应该注意什么?
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-02-11 17:31:45

  1. 就SQL连接而言--确保不泄漏内存。从查询中检索所需的最少数据量,并确保存储数据的数据结构立即超出作用域,以便垃圾收集器可以回收这些数据。

请注意,您可能无法控制内存泄漏(例如,在Postgresql连接代码中)。大家都知道会发生这种事。解决这个问题的最佳解决方案(除了进行精确的内存分析和修复底层库中的漏洞)是让您的守护进程拉出一个凤凰-停止做它正在做的事情,并exec()一个新的副本本身。

  • ,至于编写Perl守护进程,一些资源:

代码语言:javascript
复制
- [http://www.webreference.com/perl/tutorial/9/](http://www.webreference.com/perl/tutorial/9/)
- [`Proc::Daemon`](http://search.cpan.org/perldoc?Proc%3a%3aDaemon) - Run Perl program(s) as a daemon process.

票数 5
EN

Stack Overflow用户

发布于 2011-02-11 17:32:54

关于#1: Perl是垃圾收集的。

它的有效含义是,您应该确保在处理数据时清除对数据的所有引用,从而允许垃圾收集器运行。

http://perldoc.perl.org/perlobj.html#Two-Phased-Garbage-Collection

票数 2
EN

Stack Overflow用户

发布于 2011-02-11 17:32:38

有一件事需要注意,那就是内存泄漏。已经有一个非常nice thread about memory leaks in Perl了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4972072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档