首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编写linux守护进程的首选方法是什么?

问编写linux守护进程的首选方法是什么?
EN

Stack Overflow用户
提问于 2011-01-08 20:43:45
回答 5查看 3.4K关注 0票数 5

大家好

我有一个PHP网站,应该使用一些缓存的数据(例如,存储在Memcache中)。数据应该通过从web服务获取数据的守护进程存储在缓存中,其中一些数据也应该存储在MySQL服务器中。

守护进程应执行以下操作:

  1. 获取外汇汇率,解析它们并将它们存储在数据库中,以及单独机器中的两个单独的内存缓存中。
  2. 获取财务指标,并将其存储在单独的记忆缓存中。
  3. 获取大型XML数据并将其存储在两个分离的memcache中。

我能够用C/C++/Perl/PHP/Python编写这些守护进程。

为了实现这些守护进程,我必须决定在哪种语言/脚本中选择。为此使用PHP的优点是,我可以使用网站应用程序本身使用的API。另一个优点是PHP很容易,而且每个人都知道,所以我不会被束缚在维护这些守护进程上,但另一方面,PHP速度更慢,消耗更多的资源。

使用PHP以外的其他语言的主要缺点是很难维护用C/C++/Perl编写的代码。现在,我想使用C/C++/Perl来执行这类任务并不常见。我说错了吗?

在这种情况下,你建议我怎么做?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-01-09 03:27:15

Perl和Python是编写此类脚本的默认答案。但是,如果您编写了好的代码,那么您使用的语言并不重要。更重要的是,如何在失败时处理脚本。

从长远来看,您可能会发现您的脚本由于任意的原因很少失败,并且您可能不值得调试脚本,因为它通常会完成一项公平的工作,并且很难找到它出错的地方。

我几乎没有perl脚本做与您正在做的事情相同的事情。对我来说,棘手的部分是确保我的脚本不会在很长时间内失败,因为我不想错过大量的实时流数据。

为此,我使用了莫尼特。一个很棒的工具。

票数 4
EN

Stack Overflow用户

发布于 2011-01-08 20:59:34

为了简化/代码重用,最好的选择可能是PHP。

梨系统守护进程

在php中创建守护进程

编辑

据我所知,它只是在传递数据,没有什么可担心的性能。关于资源的使用,只需确保不耗尽max_memory (可能是通过流,也可能是通过配置大量资源)。中止和记录需要太长时间的操作。当SQL操作失败时,重新连接到循环中的数据库。

注意警告

Daemon编程很棘手,很多事情都可能出错。考虑到所有的失败点。

另外,请注意,Perl在守护进程方面比PHP更精通。我忽略了c/c++,因为性能(传递数据)不是一个问题,守护进程编程也够困难的,为什么还要对内存泄漏、分段错误等增加担忧呢?

票数 4
EN

Stack Overflow用户

发布于 2011-01-09 04:02:52

最好的做法是使用任何你知道的最好的技术。你将:

  • 更快地实现解决方案
  • 能够更好地调试遇到的问题。
  • 更容易地评估那些可以为您卸载一些工作的库(甚至了解它们)。
  • 更容易地维护和扩展代码

实际上,除非您有实际的性能要求,否则速度和资源使用将相对不重要。

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

https://stackoverflow.com/questions/4636039

复制
相关文章

相似问题

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