【问题标题】:Big Data with cURL [closed]带有 cURL 的大数据 [关闭]
【发布时间】:2013-08-29 02:47:24
【问题描述】:

我拥有 VPS 服务器,我想用我的服务器做一些事情,我有大约 15K 用户名的大数据。

我需要的是,将所有用户名作为 cURL 请求发送:website.com/getaccount.php?username= 每分钟。

那么这种情况的解决方案是什么.. 我不想用 Cron 来解决它,因为它需要 15000 个工作,这非常糟糕。

我可以用哪种语言优化 15K 用户?重击?珀尔? php?如果我能把它分开文件和每个文件内容 5K 用户。

请给我一个解决方案,非常感谢..

【问题讨论】:

  • 15k 个用户名从任何明智的角度来看都不是“大数据”。这是很小的数据。
  • @StephenD 好的建议?
  • @Mat 给我一个建议,亲爱的?我可以为所有 curl 请求做些什么而不会有任何延迟

标签: php perl bash curl vps


【解决方案1】:

如果我正确理解您的问题,您很可能希望通过使用诸如Gearman 之类的作业服务器来分发这项大作业

Gearman 非常灵活,您可以使用它非常快速地并行处理大量作业。

说到你应该使用什么语言...我会使用你喜欢的任何语言。我使用 处理过大型工作(比你描述的大得多) bash + php 过去。 Php 有一些非常好的包装库,您可以使用它们来快速启动。

希望这可以帮助您朝着正确的方向前进。

推荐链接:

Gearman PHP Extension - Quick Start

PHP daemon for managing gearman workers

Basic Gearman client and worker, submitting tasks

【讨论】:

    【解决方案2】:

    所有用户名是否每分钟都在变化?如果没有,那么将它们全部发送是没有用的。仅发送差异(增量),例如“删除用户 1”或“添加用户 2”或“将用户 1 重命名为用户 2”

    另外,如果我正确理解了您的示例,您希望为每个用户名发出一个 cURL 请求,这意味着每分钟 15K 请求。对我来说,这看起来像是一种类似于 dDos 攻击的资源浪费。我希望这不是您想在自己的服务器上实现的目标。

    也许尝试将您的数据量减少到仅相关数据,并在单个 cUrl 请求中批量处理所有数据!

    15K 不算大,但要正确处理!

    【讨论】:

      【解决方案3】:

      您是否可以创建一个文件,其中每一行都是一个用户名。获得文件后,您可以使用工具rsync 将其同步到您想要的任何系统中。从该系统中,您可以获取该文件以更新所有您喜欢的内容。 15K其实没什么大不了的,问题更多的是延迟。每一分钟都很快。您可以使用任何可以连接到数据源的语言生成文件,rsync 可以每分钟从 cron 作业触发,没有任何问题。

      此处使用 cURL 可能用于特定用户名(如果存在,如果密码匹配等),但在这里我能看到您的请求的唯一原因是备份,正如我所说,一分钟非常快为此。

      【讨论】:

        【解决方案4】:

        如果我了解您想通过 cURL 将所有用户数据发送到远程 php 脚本,对吗? 如果是这种情况,您可以使用 Python 编写一个带有 Sleep 函数的小脚本,该函数每 100 万次触发一次

        语法:

        进口时间 time.sleep(秒)

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-08-04
          相关资源
          最近更新 更多