Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 大数据的Cron作业_Php_Xml_Rss_Cron - Fatal编程技术网

Php 大数据的Cron作业

Php 大数据的Cron作业,php,xml,rss,cron,Php,Xml,Rss,Cron,我在Friendfeed这样的社交网络上工作。当用户添加他的提要链接时,我使用cron作业来解析每个用户提要。对于大量用户,比如每小时解析10.000个链接,这是可能的,还是会导致问题?如果不可能,Friendfeed或RSS阅读器上使用了什么来实现这一点?没有足够的信息来判断这种设计是否好,但要回答基本的问题,除非您对10k问题进行了非常密集的处理,否则每小时的cron任务所要处理的应该是微不足道的 关于您如何处理提要的更多信息,特别是该过程如何根据拥有提要的用户数和每个用户的提要数进行缩放,

我在Friendfeed这样的社交网络上工作。当用户添加他的提要链接时,我使用cron作业来解析每个用户提要。对于大量用户,比如每小时解析10.000个链接,这是可能的,还是会导致问题?如果不可能,Friendfeed或RSS阅读器上使用了什么来实现这一点?

没有足够的信息来判断这种设计是否好,但要回答基本的问题,除非您对10k问题进行了非常密集的处理,否则每小时的cron任务所要处理的应该是微不足道的


关于您如何处理提要的更多信息,特别是该过程如何根据拥有提要的用户数和每个用户的提要数进行缩放,将有助于为您提供进一步的建议。

没有足够的信息来判断此设计是否好,但要回答基本问题,除非您正在对10k问题进行非常密集的处理,否则对于每小时一次的cron工作来说,这应该是微不足道的


更多关于如何处理进给的信息,特别是关于用户的进给数量和每个用户的进给数量的过程如何,将有助于您进一步的建议。

< P>您可以考虑将有关硬件的信息添加到您的问题中,这对于希望就实现的可扩展性向您提供建议的人来说是一个很大的不同

如果您最终解析了数百万个链接,那么一个大的cron工作就会出现问题。我假设您正在执行以下操作(如果没有,您可能应该):

  • 实现用户何时订阅同一个提要,以避免获取两次
  • 获取新提要时,请检查是否存在一个站点地图,该地图告诉您提要可能更改的频率,并在合理的时间间隔内重新访问该值
  • 检查系统负载和内存使用情况,以了解何时“退出”并进入睡眠状态
这减少了每小时cron产生的汗水量

如果您正在收集数百万个提要,那么您可能希望分发这些工作,这是您在设计数据库时可能需要记住的


同样,请更新您的问题,详细说明您正在使用的硬件以及您的解决方案需要扩展到多大。没有什么东西是无限的,所以请现实一点:

你可以考虑在你的问题中添加一些关于你的硬件的信息,这对于有人告诉你你的实现会有多大的规模有很大的不同。 如果您最终解析了数百万个链接,那么一个大的cron工作就会出现问题。我假设您正在执行以下操作(如果没有,您可能应该):

  • 实现用户何时订阅同一个提要,以避免获取两次
  • 获取新提要时,请检查是否存在一个站点地图,该地图告诉您提要可能更改的频率,并在合理的时间间隔内重新访问该值
  • 检查系统负载和内存使用情况,以了解何时“退出”并进入睡眠状态
这减少了每小时cron产生的汗水量

如果您正在收集数百万个提要,那么您可能希望分发这些工作,这是您在设计数据库时可能需要记住的


同样,请更新您的问题,详细说明您正在使用的硬件以及您的解决方案需要扩展到多大。没有什么是“无限”扩展的,所以请现实一点:)

您的限制因素将是对这10000个提要的网络访问。您可以连续处理提要,并且可能在一小时内处理10000次(您需要平均约350毫秒的延迟)


当然,您希望有多个进程同时工作以加快速度。

您的限制因素将是对这10000个提要的网络访问。您可以连续处理提要,并且可能在一小时内处理10000次(您需要平均约350毫秒的延迟)


当然,您希望有多个进程同时执行工作以加快速度。

您选择的解决方案是什么,如果您获得成功(我希望如此),您将面临性能问题

正如FF创始人多次指出的那样:选择最佳实际解决方案的唯一解决方案是轮廓/测量。有了数字,选择将是显而易见的


因此:在几个月内构建一个接近您预期(=现实)情况的测试体系结构,并对其进行分析/测量。

您选择了什么解决方案,如果您获得成功(我希望如此),您将面临性能问题

正如FF创始人多次指出的那样:选择最佳实际解决方案的唯一解决方案是轮廓/测量。有了数字,选择将是显而易见的


这样:在几个月内建立一个接近于你预期的(现实的)情况的测试体系结构和配置文件/度量。

< P>你可能想考虑一下像这样的大数据工作。它是为它而设计的,因为它是一种服务,所以您不需要处理服务器或扩展。它内置了调度功能,因此您可以将一个辅助任务调度为每小时运行一次,然后该任务可以将10000个其他作业排队并并行运行